9ae6cfd7474303a699af8e98d9449d6a78fd02a8 |
|
27-Nov-2017 |
Nicolas Capens <capn@google.com> |
Fix remaining LLVM integer vector comparisons. Change-Id: I35cd9c9e4510529a324f6bd3dfd91e56b834cbca Reviewed-on: https://swiftshader-review.googlesource.com/14268 Reviewed-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Tested-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
8ef6d1097d9fe71a2461a5040bddb1893bdbed6c |
|
09-Nov-2017 |
Alexis Hetu <sugoi@google.com> |
isnan and isinf implementation Added the missing implementation for isinf and isnan. Change-Id: Ice603956a4ed8ef9515ae8f501b2876ce5fab584 Reviewed-on: https://swiftshader-review.googlesource.com/13608 Tested-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
708c24b3cd03b68aa98b29a9099d6a9ce96eca16 |
|
26-Oct-2017 |
Nicolas Capens <capn@google.com> |
Use more explicit include paths. This helps clarify dependencies and simplifies include paths. Bug swiftshader:86 Change-Id: I564ee420bb9029fa6428e49b63a86d633301bec2 Reviewed-on: https://swiftshader-review.googlesource.com/13288 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
33438a6882d629139617d80cc7fdbc687b71a794 |
|
27-Sep-2017 |
Nicolas Capens <capn@google.com> |
Refactor vector packing. x86 vector packing instructions always treat the input as having signed integer components, but can perform signed or unsigned saturation on the output. In Reactor the Pack() intrinsic has overloads which differentiate between them based on the signedness of the input, but this is confusing. Also simplify emulation of saturating add/subtract. Bug b/37496082 Change-Id: I0625fff429ffb40f42baf9600c7760d9858b5d89 Reviewed-on: https://swiftshader-review.googlesource.com/12548 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
69674fb1f01c657bfeb5f2cb6389d4a959b973f6 |
|
01-Sep-2017 |
Nicolas Capens <capn@google.com> |
Fix constant vector construction for emulated types. Emulated vectors have fewer elements than their underlying type, e.g. v4i16 is stored in the lower half of a v8i16 vector, but for constant vector construction we need to provide values for all the elements of the underlying vector. Bug b/65124545 Change-Id: Iaf942c4d517b1d4d464894ec501f7d339ae86438 Reviewed-on: https://swiftshader-review.googlesource.com/11908 Reviewed-by: Nicolas Capens <nicolascapens@google.com> Tested-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
cb98676127fd976d4fee1269f606ad0d949bd9b9 |
|
20-Jan-2017 |
Nicolas Capens <capn@google.com> |
Generalize 4x32-bit vector swizzling. This enables swizzling of Int4 and UInt4 types using swizzle operators. Change-Id: I83fe5b472433d84a7b092e18eb78a919fb39b03b Reviewed-on: https://swiftshader-review.googlesource.com/8530 Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com> Tested-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
01a9796a5e07f0319275e1c592b39544d6aa228a |
|
28-Jul-2017 |
Nicolas Capens <capn@google.com> |
Emulate 64-bit vectors using 128-bit vectors. This effectively eliminates all use of MMX instructions, using SSE ones instead. Bug swiftshader:78 Change-Id: I3e519a0c5172688ff711654bf430a9d1dd058d0b Reviewed-on: https://swiftshader-review.googlesource.com/11049 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
9e013d4624df365e002ee086486830cda78d2e98 |
|
28-Jul-2017 |
Nicolas Capens <capn@google.com> |
Assume SSE2 support is available. Chrome and many other products require SSE2 support as a minimum. Note that MMX checks are left in place for now. Dead code paths are removed. Bug swiftshader:78 Change-Id: Iabd8b1dc2092949d5dba29a78e75d014e808f12c Reviewed-on: https://swiftshader-review.googlesource.com/11068 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
fbf2bc536793bca43e28b07ce5059bbc8c377e01 |
|
26-Jul-2017 |
Nicolas Capens <capn@google.com> |
Abstract LLVM types to enable emulation. This is just a refactoring, where the 'emulated' types still map to the same types as before. They are represented using small integer values reinterpret-casted as sw::Type*, while non-emulated types correspond directly to llvm::Type pointers. Bug swiftshader:78 Change-Id: I88c0b932a45119ce500821068d8fb5faa2ccbb92 Reviewed-on: https://swiftshader-review.googlesource.com/11048 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
bea4dce934c96284fb60f21c9a1698c86e1fd703 |
|
24-Jul-2017 |
Nicolas Capens <capn@google.com> |
Fix RValue<T> construction from incorrect types. When constructing an RValue<T> from a Value, the types should match. Else a bitcast is required. Bug swiftshader:48 Change-Id: I5073091524d2f56681dab052c9f84a06b3be7b4f Reviewed-on: https://swiftshader-review.googlesource.com/10908 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
cfd963201e004f8b9b5b631812960d6985f03e75 |
|
24-Jul-2017 |
Alexis Hetu <sugoi@google.com> |
Added UInt to FP cast UInt4 -> Float4 already existed, but not UInt -> Float. Added the scalar conversion code and used it in the Blitter where appropriate. Change-Id: I9ebf63fdf8b139b960237b269f2da088f6ecac86 Reviewed-on: https://swiftshader-review.googlesource.com/10888 Tested-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <nicolascapens@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
b923042e7737fcde817b648b399f86506dff3565 |
|
17-Jul-2017 |
Nicolas Capens <capn@google.com> |
Fix Frac() returning 1.0. Frac() should always produce results in the range [0.0, 1.0), and thus never produce a 1.0. However, the current implementation uses x - floor(x) and this returns 1.0 for very small negative values due to catastrophic cancellation. Bug swiftshader:74 Change-Id: I942dd7cfb1f7ee3a260070e748704f005eed0b13 Reviewed-on: https://swiftshader-review.googlesource.com/10648 Tested-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
f4eec2f957577bd5f97639863adf4da2e9a82c2b |
|
24-May-2017 |
Nicolas Capens <capn@google.com> |
Remove unused return value. Bug b/17893069 Change-Id: I78d582455192456625523d7bf2bdc5d16c88d68e Reviewed-on: https://swiftshader-review.googlesource.com/9814 Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
47dc8676fcff01274de3d3fe98e1de607ff076d3 |
|
25-Apr-2017 |
Nicolas Capens <capn@google.com> |
Fix ARM compilation. This does not provide full support for ARM, but merely makes things (statically) compile. Bug b/37478805 Change-Id: I01d1d84e396c04c84e74d521946595014d2eafb5 Reviewed-on: https://swiftshader-review.googlesource.com/9430 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
69bc6e8ac26d38aec85946dbf1bc60c32fb6e5d3 |
|
20-Mar-2017 |
Tom Anderson <thomasanderson@google.com> |
Fix GCC build This CL fixes building the 'all' target in a Chromium checkout with the following args.gn: is_debug = false is_clang = false use_sysroot = false proprietary_codecs = true ffmpeg_branding = "Chrome" is_component_build = true enable_nacl = false use_goma = true Bug chromium:697528 Change-Id: Ie725988e8a1cb9ee672eb1e8e20d718ac91004fa Change-Id: Ie725988e8a1cb9ee672eb1e8e20d718ac91004fa Reviewed-on: https://swiftshader-review.googlesource.com/8888 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Tom Anderson <thomasanderson@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
f8faed6dd2b2389bef3b9aae0f5ce9e8fcf950fa |
|
03-Dec-2016 |
Jorge E. Moreira <jemoreira@google.com> |
Modified MutexLock to use a pthread mutex on Android. 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/8648 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
411273e7b30258756011601a2c3035dd67721a55 |
|
27-Jan-2017 |
Nicolas Capens <capn@google.com> |
Refactor Byte4 unpacking. Change-Id: I82f8215ce4366e0795ce249b4d8f6c8e391af96c Reviewed-on: https://swiftshader-review.googlesource.com/8568 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
d294def5b421885b259403efb9b1abddaae3a82c |
|
27-Jan-2017 |
Nicolas Capens <capn@google.com> |
Support unsigned array indices. Change-Id: I4136781005cbd0551461adecdd94d8e3cc8688d0 Reviewed-on: https://swiftshader-review.googlesource.com/8570 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
f549e3b690ac7ad15322eca69e22a0e5aaeda10c |
|
24-Jan-2017 |
Nicolas Capens <capn@google.com> |
Vectorize R5G6B5 framebuffer present. Change-Id: I40922c89056cacd00f9d728dfe1f3f12824c81a1 Reviewed-on: https://swiftshader-review.googlesource.com/3253 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
3e7062b993c74700a403f46f01e0d55bfaed71df |
|
17-Jan-2017 |
Nicolas Capens <capn@google.com> |
Fix packusdw SSE2 fallback. Bug swiftshader:20 Change-Id: I81ad267d450713ffe2a5a84e1d7f7f140b515c85 Reviewed-on: https://swiftshader-review.googlesource.com/8454 Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
a25311ad85c5e51022800f6f7931b1b1471ab207 |
|
16-Jan-2017 |
Nicolas Capens <capn@google.com> |
Refactor Reactor type constructors. Provide default constructors for each type, and initialize the swizzle parent in a less bug prone manner. Change-Id: Ia7f406a66274c7b1737cbe82db733e2e3ab65175 Reviewed-on: https://swiftshader-review.googlesource.com/8453 Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
96445fe36c80c3cb5443a29be673bedb7ad2fb2f |
|
15-Dec-2016 |
Nicolas Capens <capn@google.com> |
Manually convert unsigned integer to floating-point. Subzero uses a helper function to convert uint to float. It's faster to just emit a sequence of operations to perform the cast manually. This implementation converts the lower 31 bits as a signed integer, and adds 0x80000000 as a floating-point value when the upper bit is set. This approach does not produce the correct rounding in rare cases, but should still be adequate. For consistency, we're also using this method with the LLVM back-end. Change-Id: Ic5d7b73cd2a9e154056365cdbe9af0962bdbe1cb Reviewed-on: https://swiftshader-review.googlesource.com/8312 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
a29d653e1378c38f41da3d02234ded50437a548a |
|
06-Dec-2016 |
Nicolas Capens <capn@google.com> |
Deprecate support for constant pointers. The use of constant pointers produces code that cannot be relocated. They also cause issues in Subzero when offsetting them due to not having constant folding support. We only used them for Direct3D cursor rendering, which can just pass in the data as an argument instead. Bug swiftshader:14 Change-Id: Id7f16c3fcaeed3fe64b569af6a49c32f6baec483 Reviewed-on: https://swiftshader-review.googlesource.com/8257 Reviewed-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
45f187a368c383d2f44f369b965d361e1ce33e44 |
|
02-Dec-2016 |
Nicolas Capens <capn@google.com> |
Deprecate the Long1 type. It corresponds to a scalar MMX type, used mainly for vector shifts. We no longer need these shifts, and they would have been non-trivial to emulate with SSE2. Change-Id: I77a94ff5a62e043b991d4d6fa9ddd436d450181d Reviewed-on: https://swiftshader-review.googlesource.com/8249 Reviewed-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
eb253d0b6c3d44e99804ad780d273008159246d8 |
|
18-Nov-2016 |
Nicolas Capens <capn@google.com> |
Support integer rvalues as return value. Change-Id: I23e9b8de20dae93e7aa5ea7f5ff90abeba672b2b Reviewed-on: https://swiftshader-review.googlesource.com/8091 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8233 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
96d4e09163d5979f9b695cea48975d8b89b3372b |
|
18-Nov-2016 |
Nicolas Capens <capn@google.com> |
Make Reactor destination variables non-const. Bug swiftshader:27 Change-Id: I53e2e4858b10d810f649907fda98dc7863752551 Reviewed-on: https://swiftshader-review.googlesource.com/8090 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8232 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
297d26ebc4bbde6916bb548beb261490c8b7e6bc |
|
18-Nov-2016 |
Nicolas Capens <capn@google.com> |
Hold LValue address in a non-template Variable class. Variable<> was redundant after LValue became a template class. We can recycle it as a container for Values. Bug swiftshader:27 Change-Id: Ic5ed6f3f7e26579fd38f0e809f8bada1e3639d00 Reviewed-on: https://swiftshader-review.googlesource.com/8071 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8231 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
37ed908c92a019b6b55a8afe378c4f33df604547 |
|
16-Nov-2016 |
Nicolas Capens <capn@google.com> |
Eliminate "false" basic block when no Else clause. Bug swiftshader:13 Change-Id: I5dd2ce4ddf1eaf0ec2fc732d022ccad2331e6b6b Reviewed-on: https://swiftshader-review.googlesource.com/8070 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8230 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
b98fe5cd1eaa821083d816cf86a20eefe22f57c7 |
|
09-Nov-2016 |
Nicolas Capens <capn@google.com> |
Implement switch constructs. Bug swiftshader:6 Change-Id: Ifd28cab11e814dd09515ad8721f8d3d86123f19c Reviewed-on: https://swiftshader-review.googlesource.com/7970 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8165 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
c94ab74f4570d4ce781645f6c4396778a15819c1 |
|
08-Nov-2016 |
Nicolas Capens <capn@google.com> |
Implement remaining vector extract/insert operations. Bug swiftshader:15 Change-Id: I9ed683b6d122183c4313d2bf609fd7c14bf5e387 Reviewed-on: https://swiftshader-review.googlesource.com/7958 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8163 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
a16473eb80bc1d199d0d5bec6a9b8ab1bbd08be7 |
|
07-Nov-2016 |
Nicolas Capens <capn@google.com> |
Remove unused createIntCast() method. Bug swiftshader:6 Change-Id: Iba0a4904e99f7323c7e2044be03bb7dd950929d9 Reviewed-on: https://swiftshader-review.googlesource.com/7951 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8157 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
70dfff4a86680bde69cea00dad8d254ec99ffd46 |
|
27-Oct-2016 |
Nicolas Capens <capn@google.com> |
Simplify abstract value bitcasting. Change-Id: I173d563cd3cd17cf90caf723f29a6c1da51103b5 Reviewed-on: https://swiftshader-review.googlesource.com/7872 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8153 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
b0eb377b64a791387422b029c82d9f8e72a21e81 |
|
24-Oct-2016 |
Nicolas Capens <capn@google.com> |
Limit loop init scope to till end of loop. Bug swiftshader:13 Change-Id: I03cdbb3e5ea28643eb941e162125da68d183d1c6 Reviewed-on: https://swiftshader-review.googlesource.com/7810 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8144 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
9ed1a1832df6f0416d4a94446fe8e12b0cde7793 |
|
24-Oct-2016 |
Nicolas Capens <capn@google.com> |
Implement Else without using basic block predecessor. Bug swiftshader:13 Change-Id: Idd49e64aa8415ceb5d1cfee7b65a7d67ea0ebd40 Reviewed-on: https://swiftshader-review.googlesource.com/7792 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8143 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
73dd7a249d69107af605d7cb7fd94baa9d722795 |
|
20-Oct-2016 |
Nicolas Capens <capn@google.com> |
Implement remaining constant creations. Bug swiftshader:6 Change-Id: I3ab9023e2ac91a8435b403ebdd16e741197ecf6b Reviewed-on: https://swiftshader-review.googlesource.com/7757 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8138 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
2200878636ca416caedebec3b1d8c2734a0b64f3 |
|
20-Oct-2016 |
Nicolas Capens <capn@google.com> |
Remove the Long2 type. Bug swiftshader:6 Change-Id: Idb083bd1aecedb529f4e15deda3a1cfcf95a5bfa Reviewed-on: https://swiftshader-review.googlesource.com/7753 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/8133 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
8dfd9a7616f89f269f9c46cc7659c6e1a7db1ec7 |
|
13-Oct-2016 |
Nicolas Capens <capn@google.com> |
Implement support for vector constants. Bug swiftshader:17 Change-Id: Ifde00443ab55a4cf68a038fac6356182518253fe Reviewed-on: https://swiftshader-review.googlesource.com/7715 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/7671 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
13ac2327184133f5a69584ff2d69bc2cdeec1457 |
|
13-Oct-2016 |
Nicolas Capens <capn@google.com> |
Refactor constant creation. Distinguishing between Values and Constants complicates the creation of constant vectors, and isn't necessary when using Subzero assign operations to convert between them internally. Also, construct vector constants from arrays of basic types. Bug swiftshader:17 Change-Id: I9c03655ed18d5b4bd3797a252cd7f02793205254 Reviewed-on: https://swiftshader-review.googlesource.com/7713 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/7650 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
16b5f15bbba60a7f89fc3c313588da86a4266869 |
|
13-Oct-2016 |
Nicolas Capens <capn@google.com> |
Avoid ambiguous vector casts. Bug swiftshader:15 Change-Id: Ia42d21b4f2c9e19a839ffb414661f2dffa350692 Reviewed-on: https://swiftshader-review.googlesource.com/7711 Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com> Reviewed-on: https://swiftshader-review.googlesource.com/7630 Reviewed-by: Alexis Hétu <sugoi@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
e89cd5805a9e9578821d9049671f5a345874eca3 |
|
30-Sep-2016 |
Nicolas Capens <capn@google.com> |
Refactor vector swizzle. Bug swiftshader:15 Change-Id: Iaa626705220e4bd9b3c744c7623f8b204022b716 Reviewed-on: https://swiftshader-review.googlesource.com/7397 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
e95d534ac645273b3669ef62046d9aa612468e7e |
|
30-Sep-2016 |
Nicolas Capens <capn@google.com> |
Refactor vector operations. Subzero does not know the element types of vectors, so pass it as an argument. Also deprecate createSwizzle() and createMask() from Nucleus since we only need Float4 Swizzle(). Bug swiftshader:15 Change-Id: I38b630f48f8f43e1248338d564a7406d7c8cd5ef Reviewed-on: https://swiftshader-review.googlesource.com/7395 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
a0c2fc5023ab82b56499badf01d06b6efa05179c |
|
30-Sep-2016 |
Nicolas Capens <capn@google.com> |
Implement cast operations. Bug swiftshader:6 Change-Id: I12e1c109c5954ef65ea00750c2d5b027c0c7765a Reviewed-on: https://swiftshader-review.googlesource.com/7394 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
6d73871220b21157ce9f91b5d51334b379e27a7e |
|
30-Sep-2016 |
Nicolas Capens <capn@google.com> |
Add type information to pointer arguments. Unlike LLVM, Subzero does not store the type of value a pointer references as part of the pointer's type information. So add a type argument to createGEP(). Also add the type to createStore(), to enable smaller types to be emulated by larger ones. Bug swiftshader:11 Change-Id: I08173dd0ba07362d2b27baff4a8fba0ecce093d2 Reviewed-on: https://swiftshader-review.googlesource.com/7392 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
b955d5b48bc9a611f1580270fab0ce2f2ffc64a9 |
|
29-Sep-2016 |
Nicolas Capens <capn@google.com> |
Support assigning constants to values. Subzero has unrelated types for constants and variables. Both are operands to instructions, but we can't express this relationship at the Nucleus level. We'd require a large number of Value to Operand conversions. Instead, an Assign instruction is provided to convert a Constant into a Value. Bug swiftshader:12 Change-Id: Ie35a2cea3e485c4012ed949f92825a41caca3367 Reviewed-on: https://swiftshader-review.googlesource.com/7370 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
22479eb6fcd760267d8f5f6cfa96422b198f785f |
|
29-Sep-2016 |
Nicolas Capens <capn@google.com> |
Make LValue a template class. This avoids having to store the type as a member field. Bug swiftshader:12 Change-Id: I53ea4869a5b590027217d1e9cc015c0502ab530f Reviewed-on: https://swiftshader-review.googlesource.com/7361 Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com> Tested-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
e12780d57478a3d0e349a29169df73ae4a8ba684 |
|
27-Sep-2016 |
Nicolas Capens <capn@google.com> |
Implement Pointer<> support for Subzero. Bug swiftshader:11 Change-Id: I794ef54a7c2ecde71ee6344c63955d2f838ff189 Reviewed-on: https://swiftshader-review.googlesource.com/7331 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
3d7c35f224f985f3f4620be2f1bdc60b959b7724 |
|
28-Sep-2016 |
Nicolas Capens <capn@google.com> |
Don't return values from terminator instructions. All LLVM instructions are LLVM values, but in the case of terminator instructions their value is meaningless, and we don't use them. Bug swiftshader:10 Change-Id: I9eb71e1dcea2614cb810021dfbf3c8908a7e2510 Reviewed-on: https://swiftshader-review.googlesource.com/7355 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
3bbc5e16af2975cf3903ef47a21ed7d75d0874d9 |
|
27-Sep-2016 |
Nicolas Capens <capn@google.com> |
Reduce header dependencies. This removes all Common headers from Reactor headers, making it easier to use Reactor outside of SwiftShader. Bug swiftshader:10 Change-Id: I35c5d138e781d4e911d206954d38e392714d4659 Reviewed-on: https://swiftshader-review.googlesource.com/7330 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|
5763d17ef7ebf0568cc02f755361a26647d17f2e |
|
26-Sep-2016 |
Nicolas Capens <capn@google.com> |
Rename Nucleus.cpp to LLVMReactor.cpp. Bug swiftshader:10 Change-Id: I258fc7d66988c5bb9a20f98ac33e87ae26379855 Reviewed-on: https://swiftshader-review.googlesource.com/7280 Tested-by: Nicolas Capens <capn@google.com> Reviewed-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
/external/swiftshader/src/Reactor/LLVMReactor.cpp
|