- 14 Feb, 2017 1 commit
-
-
Nicolas Capens authored
Change-Id: I6077e9f439dc20217e9e7fb6c6f98f969e7d0b51 Reviewed-on: https://swiftshader-review.googlesource.com/8790Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
- 13 Feb, 2017 2 commits
-
-
Nicolas Capens authored
Make min(x, y) equal to (x < y ? x : y) and max(x, y) equal to (x > y ? x : y), including the behavior for signed zeros and NaNs. This also enables optimizing them into min and max SSE2 instructions on x86. Bug swiftshader:19 Change-Id: I047b90e9da9f3c72657ab7c619bc91b92a700a45 Reviewed-on: https://swiftshader-review.googlesource.com/8771Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
Alexis Hetu authored
Bug chromium:691427 The official build uses the LLVM gold linker, which seems to have an issue with some visibility settings. Restoring these settings for now to solve the issue. Change-Id: I4f448c38bb7c964b2a53d19e064ecb23c119ab61 Reviewed-on: https://swiftshader-review.googlesource.com/8770Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
- 10 Feb, 2017 2 commits
-
-
Alexis Hetu authored
This change adds 2 platform specific files for Linux, which are used to define the typeinfo() functions used in some classes in order to satisfy the ubsan compiler on Linux. Unfortunately, adding those definitions on all platforms breaks the build on Mac. Those aren't necessary on Windows, so the Linux specific files are enough to make the build work properly on all platforms. Change-Id: If731ab2e5df47731695412da04f9b2db576ea140 Reviewed-on: https://swiftshader-review.googlesource.com/8768Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Alexis Hetu authored
The Linux build fix had broken the Mac build, so the new "typeinfo" virtual function were moved from the header files to the source files to fix both builds simultaneously. Change-Id: I37f5ef4bd5ec4da34a19531dcb85df6a98728aa1 Reviewed-on: https://swiftshader-review.googlesource.com/8748Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 09 Feb, 2017 1 commit
-
-
Alexis Hetu authored
To prevent Chromium from building the "swiftshader_subzero" source set when building all, the source set is now located within an "if (use_swiftshader_with_subzero)" statement. Change-Id: I4363487103ec8cd6856b1afb0dd861146a3e56bd Reviewed-on: https://swiftshader-review.googlesource.com/8728Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 08 Feb, 2017 2 commits
-
-
Alexis Hetu authored
The current way "use_subzero" was used seems to fail when compiling with goma (I don't see why, honestly). Anyway, most build configuration related booleans are declared in a declare_args() section, so I moved the setting there, which will hopefully solve the issue. Change-Id: I063d9938d04bfdf8140878a740f3710309f8bf1e Reviewed-on: https://swiftshader-review.googlesource.com/8714Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Greg Hartman authored
Bug b/34268167 Change-Id: Id2200a9c7d6fea522e3405829447e031e2da15b3 Reviewed-on: https://swiftshader-review.googlesource.com/8711Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Greg Hartman <ghartman@google.com>
-
- 07 Feb, 2017 3 commits
-
-
Nicolas Capens authored
Only the instructions following a return statement were being marked as affected by it so predication would be applied. But in a loop the instructions above the return statement are also affected by it. Bug b/25220690 Change-Id: If2490a6e0b4e9cf8b6e28b33cbbbcec8b4ebfdaa Reviewed-on: https://swiftshader-review.googlesource.com/5183Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
Alexis Hetu authored
Cleaned up a few things before updating SwiftShader's version in Chromium's DEPS file: - Added Windows Subzero fix - Removed commented out sysroot related lines - Fixed formatting using git - Temporarily disabled Subzero compilation for now Change-Id: Ib6ae75c20869522675d28086ab170f01fd730f93 Reviewed-on: https://swiftshader-review.googlesource.com/8709Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Chromium UBSan builds require RTTI, for which GCC/Clang requires each class' first non-inline virtual method (the "key method") to have a known definition so that its address can be used as a unique type identifier: https://gcc.gnu.org/onlinedocs/gcc/Vague-Linkage.html libEGL and libGLESv2 each use objects who's full definition only exists within one or the other. Methods for which the definition is unknown can still be called if they are virtual, because the compiler/linker only needs to know the vtable entry offset. But because of the GCC/Clang requirement of having the first non-inline virtual method be fully defined, we need to add dummy virtual methods and their definitions. Bug swiftshader:31 Change-Id: Ib146cac811388086b29dbb099266c43795d6ed31 Reviewed-on: https://swiftshader-review.googlesource.com/8708Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
- 03 Feb, 2017 5 commits
-
-
Jorge E. Moreira authored
The BackoffLock spins idle for a while when waiting for a locked mutex before yielding the core, thus wasting many CPU cycles. Modern pthread implementations have low overhead mutexes which make the thread sleep if the lock is already held, and efficiently resume them it becomes available. Change-Id: I26b64c86db620739671373fd0d82085744d34fa8 Reviewed-on: https://swiftshader-review.googlesource.com/8648Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Since floating-point scalars are stored in vector registers, Subzero allows us to just bitcast between them, eliminating a load and insert before shuffling. Change-Id: Ibccf242fd4cfc28604f35f420a04fd4ee6eabe52 Reviewed-on: https://swiftshader-review.googlesource.com/8575Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Array accesses with unsigned indices can be faster on x86-64 because we can take advantage of implicit zero-extension of 32-bit integers to 64-bit during pointer arithmetic. Change-Id: I17d531d9ad05c2d2994f007d5444b2a514a591b8 Reviewed-on: https://swiftshader-review.googlesource.com/8571Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
Greg Hartman authored
BUG: 30979264 Change-Id: I315bc6e6b64a012896542667d7db58f3516b29de Reviewed-on: https://swiftshader-review.googlesource.com/8649Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Greg Hartman <ghartman@google.com>
-
Greg Hartman authored
Test: foo Change-Id: I27a139266d34d26f5d3468e3993a502f0596ae7d Reviewed-on: https://swiftshader-review.googlesource.com/8650Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Greg Hartman <ghartman@google.com>
-
- 02 Feb, 2017 2 commits
-
-
Nicolas Capens authored
After a pthread_join() call the handle becomes invalid or could be recycled by another thread, leading to undefined behavior when attempting to join it again. Also, on Windows the handle has to be closed to free it. Bug b/34883464 Change-Id: Ib20d0539b6b46e331c6378b3a9f0c2a334d34892 Reviewed-on: https://swiftshader-review.googlesource.com/8612Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
Alexis Hetu authored
Modified the BUILD.gn files in order to be able to easily switch between Subzero and LLVM back ends. Note that Subzero compilation should already work on Linux, as soon as the Wheezy to Jessie update lands. For now, only Windows will build Subzero. Also removed linux hack from libEGL build file. Change-Id: Ic584b604496c4b4f745b05d72a752f056495055b Reviewed-on: https://swiftshader-review.googlesource.com/8630Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 01 Feb, 2017 1 commit
-
-
Alexis Hetu authored
Linux handled the extra / properly, but Windows did not, so it had to be removed. Change-Id: Ie42d8777aef83c0024bc9b3e5c631ece7e87e236 Reviewed-on: https://swiftshader-review.googlesource.com/8629Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 31 Jan, 2017 2 commits
-
-
Victor Khimenko authored
When second arch is translated we don't have 32-bit platform and 64-bit platform. Instead we have two 32-bit ones, just one is translated. Test: Build system refactoring CL. Existing unit tests still pass. BUG=31422117 BUG=27526885 Change-Id: Ia5fdd2f485dd5e4e8bc6799f0691cd03c2bff1a0 Reviewed-on: https://swiftshader-review.googlesource.com/8609Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com> (cherry picked from commit f24b1b445274b0dbb4ffc860847a26d0b33d3a21) Reviewed-on: https://swiftshader-review.googlesource.com/8611
-
Greg Hartman authored
The 3.0 camera HAL makes extensive use of HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED, which Android defines as the format that is best for the hardware. The fake camera implementation decided that that was RGBX8888, so it seem like that is what we should use. Test: untested Change-Id: Ia02ebbefd015f9ca099b4393daf5d464f38fe8fc Reviewed-on: https://swiftshader-review.googlesource.com/8588Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
- 30 Jan, 2017 7 commits
-
-
Nicolas Capens authored
Bug b/34799114 Change-Id: Id42d3b784946291d8754774a7916a186a4694ba1 Reviewed-on: https://swiftshader-review.googlesource.com/8591Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Change-Id: I82f8215ce4366e0795ce249b4d8f6c8e391af96c Reviewed-on: https://swiftshader-review.googlesource.com/8568Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Alexis Hetu authored
Fixed MacOS build after the recent Linux fix caused an issue on MacOS. Removed a few flags and changed visibility to fix it. Change-Id: Ic9d08d8ec0ccf8a2002f2787c3ec79861bb59139 Reviewed-on: https://swiftshader-review.googlesource.com/8589Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Change-Id: I4136781005cbd0551461adecdd94d8e3cc8688d0 Reviewed-on: https://swiftshader-review.googlesource.com/8570Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
operator[] on a pointer was using the vector register size (16 bytes) instead of the size of the (emulated) vector type. Change-Id: Ice8677b41a3af81176fe9495fd02ede9f8b0482f Reviewed-on: https://swiftshader-review.googlesource.com/8569Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Stores are dead if the address is from an alloca and all uses of the address are stores, not just when it's a single store. Change-Id: I5b65a64e21b9e398922e5440c35f0d318c03e911 Reviewed-on: https://swiftshader-review.googlesource.com/8574Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
If a store address has no definition, it must be a pointer argument. Unlike stores to alloca's, these are not dead. Change-Id: I66e50b14ffea1cfc61fc756b5545ab8ae28b4bf8 Reviewed-on: https://swiftshader-review.googlesource.com/8573Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 27 Jan, 2017 2 commits
-
-
Alexis Hetu authored
In order to add Subzero as a dependency in Chromium, Chromium's DEPS file will be modified to use SwiftShader's DEPS file in order to pull SwiftShader's desired revision of Subzero. This will ensure that SwiftShader and Subzero are always in sync. Change-Id: I0b24845c0ddbf974baac4ef6cc3ff6ab397d5f69 Reviewed-on: https://swiftshader-review.googlesource.com/8529Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Alexis Hetu authored
Although SwiftShader was building properly on the build bots, it wasn't exporting its symbols properly. I compared the flags used in the BUILD.gn files and in the CMakeLists.txt file and attempted to get both build systems to use the same flags and options. Change-Id: Idc73d4ad5b45311881e88720bf611e25110dcc70 Reviewed-on: https://swiftshader-review.googlesource.com/8576Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 25 Jan, 2017 2 commits
-
-
Nicolas Capens authored
Constant operands of commutative operations preferably go on the right hand side to avoid requiring an extra register for two operand instructions. Also, Subzero assumes constants in pointer arithmetic are on the right hand side to consider optimizing it into an addressing mode. Change-Id: Ife5a471903d5f4bef0c19b6c908d75715f06bfec Reviewed-on: https://swiftshader-review.googlesource.com/8548Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Change-Id: I40922c89056cacd00f9d728dfe1f3f12824c81a1 Reviewed-on: https://swiftshader-review.googlesource.com/3253Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 23 Jan, 2017 2 commits
-
-
Greg Hartman authored
BUG: 31072273 Change-Id: I037505ad3ab1ba80aecab4e24ec8d1932df2dcf7 Reviewed-on: https://swiftshader-review.googlesource.com/7030Reviewed-by:
Lingfeng Yang <lfy@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Lingfeng Yang <lfy@google.com>
-
Nicolas Capens authored
MAP_ANON has been deprecated in favor of MAP_ANONYMOUS, but Mac OS only defines MAP_ANON. Bug chromium:630728 Change-Id: I7345a5f9227acbc0caa29d8103855ab531f16499 Reviewed-on: https://swiftshader-review.googlesource.com/8531Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-
- 19 Jan, 2017 2 commits
-
-
Alexis Hetu authored
Fixed: - type comparison mismatch - redefined macros - unused functions - line endings Change-Id: I965ca4b887aee968e6cf95feb36c3cbf90b85580 Reviewed-on: https://swiftshader-review.googlesource.com/8528Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Change-Id: I7979eb2557a6103ad10b7be3c274fadf12d27ae7 Reviewed-on: https://swiftshader-review.googlesource.com/8508Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 18 Jan, 2017 3 commits
-
-
Nicolas Capens authored
Bug swiftshader:20 Change-Id: I67818bfe10cb29211559fb2ee047f6bec6ce46d4 Reviewed-on: https://swiftshader-review.googlesource.com/8451Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
Bug swiftshader:20 Change-Id: I20c2ab7cb4c00c365520ff8b8500f7594127498b Reviewed-on: https://swiftshader-review.googlesource.com/8468Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
Nicolas Capens authored
When we have an uninitialized variable that is declared outside of a loop and is read and written to inside the loop, we should not eliminate the load and replace it with an undefined value, because in the next iteration we want the value from the previous iteration. Change-Id: Ic996c796307f62fc835079af6c58adf1eb288259 Reviewed-on: https://swiftshader-review.googlesource.com/8488Tested-by:
Nicolas Capens <capn@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com>
-
- 17 Jan, 2017 1 commit
-
-
Nicolas Capens authored
Bug swiftshader:20 Change-Id: I81ad267d450713ffe2a5a84e1d7f7f140b515c85 Reviewed-on: https://swiftshader-review.googlesource.com/8454Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <capn@google.com> Tested-by:
Nicolas Capens <capn@google.com>
-