summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86InstrInfo.td
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@intel.com>2018-03-29 21:03:53 +0000
committerCraig Topper <craig.topper@intel.com>2018-03-29 21:03:53 +0000
commit3f2dbec652f8406a314b76bbb5e715a03393db76 (patch)
treeccd3506d9cbb97bb0077fe71085b06d0def78e6c /llvm/lib/Target/X86/X86InstrInfo.td
parentd676ba0f28ee263bc68f6992ca237cdf9395be21 (diff)
downloadbcm5719-llvm-3f2dbec652f8406a314b76bbb5e715a03393db76.tar.gz
bcm5719-llvm-3f2dbec652f8406a314b76bbb5e715a03393db76.zip
[X86] Remove ReadAfterLd from BMI and TBM instructions that don't have a register operand in their memory form
The memory form of these instructions only read an input from memory. They don't have any register operands. Differential Revision: https://reviews.llvm.org/D44836 llvm-svn: 328828
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrInfo.td')
-rw-r--r--llvm/lib/Target/X86/X86InstrInfo.td6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td
index 1dd464c1c3b..b246c8caffa 100644
--- a/llvm/lib/Target/X86/X86InstrInfo.td
+++ b/llvm/lib/Target/X86/X86InstrInfo.td
@@ -2341,7 +2341,7 @@ let hasSideEffects = 0 in {
let mayLoad = 1 in
def rm : I<0xF3, MemMRM, (outs RC:$dst), (ins x86memop:$src),
!strconcat(mnemonic, "\t{$src, $dst|$dst, $src}"),
- [], IIC_UNARY_MEM>, T8PS, VEX_4V, Sched<[WriteALULd, ReadAfterLd]>;
+ [], IIC_UNARY_MEM>, T8PS, VEX_4V, Sched<[WriteALULd]>;
}
}
@@ -2540,7 +2540,7 @@ multiclass tbm_ternary_imm_intr<bits<8> opc, RegisterClass RC, string OpcodeStr,
!strconcat(OpcodeStr,
"\t{$cntl, $src1, $dst|$dst, $src1, $cntl}"),
[(set RC:$dst, (Int (ld_frag addr:$src1), immoperator:$cntl))],
- IIC_BIN_MEM>, XOP, XOPA, Sched<[WriteALULd, ReadAfterLd]>;
+ IIC_BIN_MEM>, XOP, XOPA, Sched<[WriteALULd]>;
}
defm BEXTRI32 : tbm_ternary_imm_intr<0x10, GR32, "bextr{l}", i32mem, loadi32,
@@ -2560,7 +2560,7 @@ let hasSideEffects = 0 in {
let mayLoad = 1 in
def rm : I<opc, FormMem, (outs RC:$dst), (ins x86memop:$src),
!strconcat(OpcodeStr,"\t{$src, $dst|$dst, $src}"),
- [], IIC_BIN_MEM>, XOP_4V, XOP9, Sched<[WriteALULd, ReadAfterLd]>;
+ [], IIC_BIN_MEM>, XOP_4V, XOP9, Sched<[WriteALULd]>;
}
}
OpenPOWER on IntegriCloud