summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>2014-08-04 23:48:10 +0000
committerBill Schmidt <wschmidt@linux.vnet.ibm.com>2014-08-04 23:48:10 +0000
commit449eddb4a08a1e24a04d88358c9ffb3927996c59 (patch)
tree4574906b019e6b0331e447537fedf7738989b9b9 /runtime
parent6f7e0363c0bf98a682b014ba11856032ce80ad0d (diff)
Merging r214801:
------------------------------------------------------------------------ r214801 | wschmidt | 2014-08-04 18:21:26 -0500 (Mon, 04 Aug 2014) | 19 lines [PPC64LE] Fix wrong IR for vec_sld and vec_vsldoi My original LE implementation of the vsldoi instruction, with its altivec.h interfaces vec_sld and vec_vsldoi, produces incorrect shufflevector operations in the LLVM IR. Correct code is generated because the back end handles the incorrect shufflevector in a consistent manner. This patch and a companion patch for LLVM correct this problem by removing the fixup from altivec.h and the corresponding fixup from the PowerPC back end. Several test cases are also modified to reflect the now-correct LLVM IR. The vec_sums and vec_vsumsws interfaces in altivec.h are also fixed, because they used vec_perm calls intended to be recognized as vsldoi instructions. These vec_perm calls are now replaced with code that more clearly shows the intent of the transformation. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_35@214823 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'runtime')
0 files changed, 0 insertions, 0 deletions