[SystemZ] Support load-and-zero-rightmost-byte facility
authorUlrich Weigand <ulrich.weigand@de.ibm.com>
Fri, 11 Nov 2016 12:46:28 +0000 (12:46 +0000)
committerUlrich Weigand <ulrich.weigand@de.ibm.com>
Fri, 11 Nov 2016 12:46:28 +0000 (12:46 +0000)
commit92c2c672e5be7d4f15f4d40bb46fe7b6f403a311
tree6d3ad07199a5aa275bd76fcecbd3cce98e807136
parent5dc7b67c6263fe7f2ced7cb4957e967ab770fab8
[SystemZ] Support load-and-zero-rightmost-byte facility

This adds support for the LZRF/LZRG/LLZRGF instructions that were
added on z13, and uses them for code generation were appropriate.

SystemZDAGToDAGISel::tryRISBGZero is updated again to prefer LLZRGF
over RISBG where both would be possible.

llvm-svn: 286586
llvm/lib/Target/SystemZ/SystemZFeatures.td
llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
llvm/lib/Target/SystemZ/SystemZInstrInfo.td
llvm/lib/Target/SystemZ/SystemZScheduleZ13.td
llvm/lib/Target/SystemZ/SystemZSubtarget.cpp
llvm/lib/Target/SystemZ/SystemZSubtarget.h
llvm/test/CodeGen/SystemZ/int-conv-13.ll [new file with mode: 0644]
llvm/test/MC/Disassembler/SystemZ/insns-z13.txt
llvm/test/MC/SystemZ/insn-bad-z13.s
llvm/test/MC/SystemZ/insn-good-z13.s