[PATCH] D52474: [AArch64] Extend single-operand FP insns to match Arm ARM (NFCI)
Oliver Stannard via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 26 08:46:10 PDT 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rL343120: [AArch64] Extend single-operand FP insns to match Arm ARM (NFCI) (authored by olista01, committed by ).
Repository:
rL LLVM
https://reviews.llvm.org/D52474
Files:
llvm/trunk/lib/Target/AArch64/AArch64InstrFormats.td
Index: llvm/trunk/lib/Target/AArch64/AArch64InstrFormats.td
===================================================================
--- llvm/trunk/lib/Target/AArch64/AArch64InstrFormats.td
+++ llvm/trunk/lib/Target/AArch64/AArch64InstrFormats.td
@@ -4401,33 +4401,34 @@
//---
let mayLoad = 0, mayStore = 0, hasSideEffects = 0 in
-class BaseSingleOperandFPData<bits<4> opcode, RegisterClass regtype,
+class BaseSingleOperandFPData<bits<6> opcode, RegisterClass regtype,
ValueType vt, string asm, SDPatternOperator node>
: I<(outs regtype:$Rd), (ins regtype:$Rn), asm, "\t$Rd, $Rn", "",
[(set (vt regtype:$Rd), (node (vt regtype:$Rn)))]>,
Sched<[WriteF]> {
bits<5> Rd;
bits<5> Rn;
let Inst{31-24} = 0b00011110;
- let Inst{21-19} = 0b100;
- let Inst{18-15} = opcode;
+ let Inst{21} = 0b1;
+ let Inst{20-15} = opcode;
let Inst{14-10} = 0b10000;
let Inst{9-5} = Rn;
let Inst{4-0} = Rd;
}
multiclass SingleOperandFPData<bits<4> opcode, string asm,
SDPatternOperator node = null_frag> {
- def Hr : BaseSingleOperandFPData<opcode, FPR16, f16, asm, node> {
+
+ def Hr : BaseSingleOperandFPData<{0b00,opcode}, FPR16, f16, asm, node> {
let Inst{23-22} = 0b11; // 16-bit size flag
let Predicates = [HasFullFP16];
}
- def Sr : BaseSingleOperandFPData<opcode, FPR32, f32, asm, node> {
+ def Sr : BaseSingleOperandFPData<{0b00,opcode}, FPR32, f32, asm, node> {
let Inst{23-22} = 0b00; // 32-bit size flag
}
- def Dr : BaseSingleOperandFPData<opcode, FPR64, f64, asm, node> {
+ def Dr : BaseSingleOperandFPData<{0b00,opcode}, FPR64, f64, asm, node> {
let Inst{23-22} = 0b01; // 64-bit size flag
}
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52474.167149.patch
Type: text/x-patch
Size: 1741 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180926/cefdcf07/attachment.bin>
More information about the llvm-commits
mailing list