OSDN Git Service

AMDGPU: Use standalone MUBUF load patterns
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Mon, 15 Jul 2019 21:41:44 +0000 (21:41 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Mon, 15 Jul 2019 21:41:44 +0000 (21:41 +0000)
commit48a97c0af4973f12c1e3158ee1579814638dab0b
tree0c9d9048594ca382f1a7a1a3aa96a1375c40971b
parent243b4a424c79471745d045d8f060463a523389c2
AMDGPU: Use standalone MUBUF load patterns

We already do this for the flat and DS instructions, although it is
certainly uglier and more verbose.

This will allow using separate pattern definitions for extload and
zextload. Currently we get away with using a single PatFrag with
custom predicate code to check if the extension type is a zextload or
anyextload. The generic mechanism the global isel emitter understands
treats these as mutually exclusive. I was considering making the
pattern emitter accept zextload or sextload extensions for anyextload
patterns, but in global isel, the different extending loads have
distinct opcodes, and there is currently no mechanism for an opcode
matcher to try multiple (and there probably is very little need for
one beyond this case).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366132 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AMDGPU/BUFInstructions.td