Files
llvm/test/CodeGen/PowerPC
Justin Hibbits 46ff700747 PowerPC/SPE: Fix load/store handling for SPE
Summary:
Pointed out in a comment for D49754, register spilling will currently
spill SPE registers at almost any offset.  However, the instructions
`evstdd` and `evldd` require a) 8-byte alignment, and b) a limit of 256
(unsigned) bytes from the base register, as the offset must fix into a
5-bit offset, which ranges from 0-31 (indexed in double-words).

The update to the register spill test is taken partially from the test
case shown in D49754.

Additionally, pointed out by Kei Thomsen, globals will currently use
evldd/evstdd, though the offset isn't known at compile time, so may
exceed the 8-bit (unsigned) offset permitted.  This fixes that as well,
by forcing it to always use evlddx/evstddx when accessing globals.

Part of the patch contributed by Kei Thomsen.

Reviewers: nemanjai, hfinkel, joerg

Subscribers: kbarton, jsji, llvm-commits

Differential Revision: https://reviews.llvm.org/D54409

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366318 91177308-0d34-0410-b5e6-96231b3b80d8
2019-07-17 12:30:04 +00:00
..
2018-09-07 07:56:05 +00:00
2019-05-14 03:11:24 +00:00
2019-04-29 23:25:33 +00:00
2019-03-29 17:35:56 +00:00
2017-10-10 08:46:10 +00:00
2018-12-19 15:21:07 +00:00
2019-06-17 09:13:29 +00:00
2019-06-17 09:13:29 +00:00
2019-06-17 09:13:29 +00:00
2017-01-22 20:28:56 +00:00