llvm-project/llvm/test/CodeGen
Matt Arsenault c06574ffc0 AMDGPU: Add pass to replace out arguments
It is better to return arguments directly in registers
if we are making a call rather than introducing expensive
stack usage. In one of sample compile from one of
Blender's many kernel variants, this fires on about
~20 different functions. Future improvements may be to
recognize simple cases where the pointer is indexing a small
array. This also fails when the store to the out argument
is in a separate block from the return, which happens in
a few of the Blender functions. This should also probably
be using MemorySSA which might help with that.

I'm not sure this is correct as a FunctionPass, but
MemoryDependenceAnalysis seems to not work with
a ModulePass.

I'm also not sure where it should run.I think it should
run  before DeadArgumentElimination, so maybe either
EP_CGSCCOptimizerLate or EP_ScalarOptimizerLate.

llvm-svn: 309416
2017-07-28 18:40:05 +00:00
..
AArch64 GlobalISel: map 128-bit values to an FPR by default. 2017-07-28 17:11:01 +00:00
AMDGPU AMDGPU: Add pass to replace out arguments 2017-07-28 18:40:05 +00:00
ARM [ARM] Add the option to directly access TLS pointer 2017-07-28 12:54:57 +00:00
AVR [AVR] Remove the instrumentation pass 2017-07-23 23:39:11 +00:00
BPF [DAG] Fix typo preventing some stores merges to truncated stores. 2017-07-23 02:06:28 +00:00
Generic [AVR] Add/remove XFAILs to get the backend passing Generic CodeGen tests 2017-07-16 23:33:50 +00:00
Hexagon [Hexagon] Recognize C4_cmpneqi, C4_cmpltei and C4_cmplteui in NewValueJump 2017-07-24 19:35:48 +00:00
Inputs
Lanai CodeGen: Rename DEBUG_TYPE to match passnames 2017-05-25 21:26:32 +00:00
MIR AMDGPU: Implement memory model 2017-07-21 21:19:23 +00:00
MSP430 [DAG] Improve Aliasing of operations to static alloca 2017-07-18 20:06:24 +00:00
Mips Fix endianness bug in DAGCombiner::visitTRUNCATE and visitEXTRACT_VECTOR_ELT 2017-07-25 09:40:35 +00:00
NVPTX [NVPTX] Add lowering of i128 params. 2017-07-20 21:16:03 +00:00
Nios2 [Nios2] Target registration 2017-05-29 09:48:30 +00:00
PowerPC [PowerPC] enable optimizeCompareInstr for branch with static branch hint 2017-07-27 08:14:48 +00:00
SPARC [SPARC] Clean up the support for disabling fsmuld and fmuls instructions. 2017-07-20 20:09:11 +00:00
SystemZ [SystemZ] test update 2017-07-21 13:14:17 +00:00
Thumb [ARM] Allow rematerialization of ARM Thumb literal pool loads 2017-07-14 08:23:56 +00:00
Thumb2 [ARM] Adjust ifcvt heuristic for the diamond ifcvt case 2017-07-12 13:23:10 +00:00
WebAssembly Revert r308273 to reinstate part of r308100. 2017-07-19 04:15:30 +00:00
WinEH
X86 [X86] Add test case for PR33290 2017-07-28 09:43:52 +00:00
XCore [DAG] Improve Aliasing of operations to static alloca 2017-07-18 20:06:24 +00:00