This is an archive of the discontinued LLVM Phabricator instance.

AMDGPU: Decompose all values to 32-bit pieces for calling conventions
ClosedPublic

Authored by arsenm on Jul 12 2019, 12:27 PM.

Details

Summary

This is the more natural lowering, and presents more opportunities to
reduce 64-bit ops to 32-bit.

This should also help avoid issues graphics shaders have had with
64-bit values, and simplify argument lowering in globalisel.

Diff Detail

Event Timeline

arsenm created this revision.Jul 12 2019, 12:27 PM
rampitec added inline comments.Jul 12 2019, 12:33 PM
lib/Target/AMDGPU/AMDGPUCallingConv.td
141

Should you also list v32i32?

arsenm marked an inline comment as done.Jul 12 2019, 12:36 PM
arsenm added inline comments.
lib/Target/AMDGPU/AMDGPUCallingConv.td
141

This removes the need to list the tuple types. I think this can also be removed for the stack passed arguments, but I'll look at that separately.

This revision is now accepted and ready to land.Jul 12 2019, 12:48 PM
arsenm closed this revision.Jul 19 2019, 6:57 AM

r366578