Tom Stellard
79243d9664
R600: Call EmitFunctionHeader() in the AsmPrinter to populate the ELF symbol table
...
llvm-svn: 218776
2014-10-01 17:15:17 +00:00
Tom Stellard
744b99b476
R600/SI: Enable selecting SALU inside branches
...
We can do this now that the FixSGPRLiveRanges pass is working.
llvm-svn: 218353
2014-09-24 01:33:28 +00:00
Matt Arsenault
49dd4283ed
R600/SI: Prefer selecting more e64 instruction forms.
...
Add some more tests to make sure better operand
choices are still made. Leave some cases that seem
to have no reason to ever be e64 alone.
llvm-svn: 217789
2014-09-15 17:15:02 +00:00
Tom Stellard
155bbb7713
R600/SI: Add a ComplexPattern for selecting MUBUF _OFFSET variant
...
This saves us from having to copy a 64-bit 0 value into VGPRs for
BUFFER_* instruction which only have a 12-bit immediate offset.
llvm-svn: 215399
2014-08-11 22:18:17 +00:00
Tom Stellard
229d5e669b
R600/SI: Update MUBUF assembly string to match AMD proprietary compiler
...
llvm-svn: 214866
2014-08-05 14:48:12 +00:00
Tom Stellard
1aaad6970c
R600/SI: Add instruction shrinking pass
...
This pass converts 64-bit instructions to 32-bit when possible.
llvm-svn: 213561
2014-07-21 16:55:33 +00:00
Tom Stellard
ae4c9e7bc3
R600/SI: Add patterns for ctpop inside a branch
...
llvm-svn: 211378
2014-06-20 17:06:11 +00:00
Matt Arsenault
6042506b5c
R600: Use BCNT_INT for evergreen
...
llvm-svn: 210569
2014-06-10 19:18:28 +00:00
Matt Arsenault
b5b5110b5c
R600/SI: Use bcnt instruction for ctpop
...
llvm-svn: 210567
2014-06-10 19:18:21 +00:00