summaryrefslogtreecommitdiff
path: root/libs/pbd/fpu.cc
AgeCommit message (Collapse)Author
2016-11-10Fix for conflicting definition of _xgetbv with mingw-w64 >= 5Tim Mayberry
Simplify the #ifdef logic so it is easier to follow and add exceptions in the future if necessary.
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-03-08fix __cpuid() on x86Florian Weimer
The previous version used memory operands that gcc (probably dependent on optimization flags and/or version) could address relative to the stack pointer, but pushing %ebx onto the stack changed it. Here, the address of the regs array is put into %esi and the individual members are written into directly.
2016-03-04allow to override FPU detectionRobin Gareus
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2015-09-12plug some memory leaks in libsRobin Gareus
2015-08-16Add '_xgetbv()' for MSVC-9 and earlierJohn Emmas
2015-08-14tweaks for AVX detectionPaul Davis
2015-08-12fix PPC buildsRobin Gareus
2015-08-11comment tweak to show that the __cpuid() intrinsic belongs to MSVC and mingwPaul Davis
2015-08-12fix mingw compilationRobin Gareus
2015-08-11can't use xgetbv instruction with apple gcc under OS X LionPaul Davis
2015-08-11clean up FPU code with some ideas from Chromium and the webPaul Davis
2015-08-11fix stupid logic error in testing separate bits required for AVX supportPaul Davis
2015-08-11improved solution for xgetbv() on windows and linux with all compilersPaul Davis
2015-08-11#ifdef out AVX detection on APPLEPaul Davis
2015-08-11add required test of OS support for AVX register usePaul Davis
2015-08-11add test for CPU/FPU AVX capabilitiesPaul Davis
2015-04-30Correctly dereference 'fxbuf' when building with MSVCJohn Emmas
2015-04-30When testing for x86 / x64 architecture, don't forget the symbols that MSVC ↵John Emmas
can understand
2015-04-24windows 32bit asm/fpu support.Robin Gareus
This still leaves cache_aligned_malloc() in libs/pbd/malign.cc pending _aligned_free (windows crashes when using free() on memory allocated with _aligned_malloc()). So far however there seems to be no issue with default malloc for audio+midi buffers on win32…
2015-04-21<intrin.h> is for windows onlyPaul Davis
2015-04-21add required header for windows compile of FPU codePaul Davis
2015-04-21fix build of FPU code on OS X by reverting to use of _LP64 to identify 32/64 ↵Paul Davis
bit situation
2015-04-21merge all mingw and msvc specific code for FPU information into ↵Paul Davis
libs/pbd/fpu.cc and remove msvc-specific version
2015-04-21[Summary] Added SSE sound processing functions support for Windows. Version 1.Greg Zharun
Conflicts: wscript
2014-01-10finished merge of cairocanvas with windows and windows+cc branchesPaul Davis
2014-01-10Merge windows+cc branch into cairocanvas branch. Not finished, need to now ↵Paul Davis
merge windows branch to get changes from there
2013-12-05workaround compilation issues with assembler in fpu code and mingwPaul Davis
2013-11-04try to fix various warnings from gcc when optimization flags are enabledPaul Davis
2013-07-16Windows (compiler specific) includes for libpbdJohn Emmas
2013-01-16add copyright commentsPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13857 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-17Fix posix_memalign checks.David Robillard
git-svn-id: svn://localhost/ardour2/branches/3.0@12316 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-16Align the address of the pointer to the fxsave block to a 16-byte boundary ↵Carl Hetherington
(as well as the pointer itself), which the internets seem to suggest is required. git-svn-id: svn://localhost/ardour2/branches/3.0@12313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26explain MXCSR shenanigans in libs/pbd/fpu.ccPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@11079 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-02use compiler-generated _LP64 macro to detect x86_64 rather than USE_X86_64_ASMPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@10871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-10build fixes for OS XPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@8006 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31update comments on register clobberingPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6423 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31un-fix register clobber list for gcc on x86Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6422 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31add some asm notes, some more registers back to the clobber list, and memset ↵Paul Davis
the fxsave area in FPU::FPU() git-svn-id: svn://localhost/ardour2/branches/3.0@6420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31Fix assembler clobber lists in BPD::FPUSakari Bergen
git-svn-id: svn://localhost/ardour2/branches/3.0@6419 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
All #include statements that include a header that is a part of a library bundled with ardour MUST use quotes, not angle brackets. Do this: #include "ardour/types.h" NOT this: #include <ardour/types.h> Rationale: This is best practice in general, to ensure we include the local version and not the system version. That quotes mean "local" (in some sense) and angle brackets mean "system" (in some sense) is a ubiquitous convention and IIRC right in the C spec somewhere. More pragmatically, this is required by (my) waf (stuff) for dependencies to work correctly. That is: !!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!! Failure to comply is punishable by death by torture. :) P.S. It's not that dramatic in all cases, but this (in combination with some GCC flags specific to the include type) is the best way I have found to be absolutely 100% positive the local ones are being used (and we definitely want to be absolutely 100% positive on that one). git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10merge from 2.0-ongoing @ 3581Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02rollback to 3428, before the mysterious removal of libs/* at 3431/3432Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02remove empty sigc++2 directoryDoug McLain
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-06merge essej's fix for OS XPaul Davis
git-svn-id: svn://localhost/ardour2/trunk@1956 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-01round 2 of denormal handling changes - detect DAZ support at runtime, and ↵Paul Davis
use accordingly. move all FPU feature detection into PBD::FPU git-svn-id: svn://localhost/ardour2/trunk@1939 d708f5d6-7413-0410-9779-e7cbd77b26cf