OSDN Git Service

[SystemZ] Enable long displacement constraints for inline ASM operands
authorUlrich Weigand <ulrich.weigand@de.ibm.com>
Thu, 9 Jun 2016 15:19:16 +0000 (15:19 +0000)
committerUlrich Weigand <ulrich.weigand@de.ibm.com>
Thu, 9 Jun 2016 15:19:16 +0000 (15:19 +0000)
commit09f4ea27b7c017b83026cbb7bd72c2c000f9df11
treedc8f06f6524414adc0a180bd00a0a49452c3841f
parentcbf7512550d329188f4aa5760057f03ed819d1d0
[SystemZ] Enable long displacement constraints for inline ASM operands

This enables use of the 'S' constraint for inline ASM operands on
SystemZ, which allows for a memory reference with a signed 20-bit
immediate displacement. This patch includes corresponding documentation
and test case updates.

I've changed the 'T' constraint to match the new behavior for 'S', as
'T' also uses a long displacement (though index constraints are still
not implemented). I also changed 'm' to match the behavior for 'S' as
this will allow for a wider range of displacements for 'm', though
correct me if that's not the right decision.

Author: colpell
Differential Revision: http://reviews.llvm.org/D21097

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272266 91177308-0d34-0410-b5e6-96231b3b80d8
docs/LangRef.rst
lib/Target/SystemZ/README.txt
lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
test/CodeGen/SystemZ/asm-03.ll
test/CodeGen/SystemZ/asm-04.ll
test/CodeGen/SystemZ/asm-05.ll