Home
last modified time | relevance | path

Searched refs:BEXTR (Results 1 – 25 of 45) sorted by relevance

12

/external/llvm-project/llvm/test/CodeGen/X86/
Dbmi-x86_64.ll2 …riple=x86_64-unknown-unknown -mattr=+bmi | FileCheck %s --check-prefixes=CHECK,BEXTR-SLOW,BMI1-SLOW
3 …x86_64-unknown-unknown -mattr=+bmi,+bmi2 | FileCheck %s --check-prefixes=CHECK,BEXTR-SLOW,BMI2-SLOW
4 …ple=x86_64-unknown-unknown -mattr=+bmi,+fast-bextr | FileCheck %s --check-prefixes=CHECK,BEXTR-FAST
5 …6_64-unknown-unknown -mattr=+bmi,+bmi2,+fast-bextr | FileCheck %s --check-prefixes=CHECK,BEXTR-FAST
19 ; BEXTR-SLOW-LABEL: bextr64b:
20 ; BEXTR-SLOW: # %bb.0:
21 ; BEXTR-SLOW-NEXT: movq %rdi, %rax
22 ; BEXTR-SLOW-NEXT: shrl $4, %eax
23 ; BEXTR-SLOW-NEXT: andl $4095, %eax # imm = 0xFFF
24 ; BEXTR-SLOW-NEXT: retq
[all …]
Dbmi.ll2 … -mtriple=i686-unknown-unknown -mattr=+cmov,+bmi | FileCheck %s --check-prefixes=X86,X86-SLOW-BEXTR
3 …ple=i686-unknown-unknown -mattr=+cmov,+bmi,+bmi2 | FileCheck %s --check-prefixes=X86,X86-SLOW-BEXTR
4 …< %s -mtriple=x86_64-unknown-unknown -mattr=+bmi | FileCheck %s --check-prefixes=X64,X64-SLOW-BEXTR
5 …mtriple=x86_64-unknown-unknown -mattr=+bmi,+bmi2 | FileCheck %s --check-prefixes=X64,X64-SLOW-BEXTR
6 …86-unknown-unknown -mattr=+cmov,+bmi,+fast-bextr | FileCheck %s --check-prefixes=X86,X86-FAST-BEXTR
7 …e=x86_64-unknown-unknown -mattr=+bmi,+fast-bextr | FileCheck %s --check-prefixes=X64,X64-FAST-BEXTR
347 ; X86-SLOW-BEXTR-LABEL: bextr32b:
348 ; X86-SLOW-BEXTR: # %bb.0:
349 ; X86-SLOW-BEXTR-NEXT: movl {{[0-9]+}}(%esp), %eax
350 ; X86-SLOW-BEXTR-NEXT: shrl $4, %eax
[all …]
/external/llvm-project/llvm/test/Transforms/SimplifyCFG/X86/
Dsafe-low-bit-extract.ll4 ; This is the naive implementation of x86 BZHI/BEXTR instruction:
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/X86/
DX86IntrinsicsInfo.h996 X86_INTRINSIC_DATA(bmi_bextr_32, INTR_TYPE_2OP, X86ISD::BEXTR, 0),
997 X86_INTRINSIC_DATA(bmi_bextr_64, INTR_TYPE_2OP, X86ISD::BEXTR, 0),
1105 X86_INTRINSIC_DATA(tbm_bextri_u32, BEXTRI, X86ISD::BEXTR, 0),
1106 X86_INTRINSIC_DATA(tbm_bextri_u64, BEXTRI, X86ISD::BEXTR, 0),
DX86ScheduleSLM.td160 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86ISelLowering.h345 BEXTR, enumerator
DX86ISelDAGToDAG.cpp3500 SDValue Extract = CurDAG->getNode(X86ISD::BEXTR, DL, XVT, X, Control); in matchBitExtract()
5056 SDValue BEXTR = SDValue(NewNode, 0); in Select() local
5057 NewNode = CurDAG->getMachineNode(TestOpc, dl, MVT::i32, BEXTR, BEXTR); in Select()
DX86ScheduleAtom.td144 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86Schedule.td199 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86ScheduleBtVer2.td248 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86SchedSandyBridge.td190 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86.td436 "Indicates that the BEXTR instruction is implemented as a single uop "
DX86ScheduleBdVer2.td558 // BMI1 BEXTR, BMI2 BZHI
/external/llvm/lib/Target/X86/
DX86ISelLowering.h346 BEXTR, enumerator
DX86SchedHaswell.td894 // BEXTR.
896 def : InstRW<[Write2P0156_Lat2], (instregex "BEXTR(32|64)rr")>;
898 def : InstRW<[Write2P0156_Lat2Ld], (instregex "BEXTR(32|64)rm")>;
/external/llvm-project/llvm/lib/Target/X86/
DX86ScheduleSLM.td160 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86ISelLowering.h404 BEXTR, enumerator
DX86IntrinsicsInfo.h992 X86_INTRINSIC_DATA(bmi_bextr_32, INTR_TYPE_2OP, X86ISD::BEXTR, 0),
993 X86_INTRINSIC_DATA(bmi_bextr_64, INTR_TYPE_2OP, X86ISD::BEXTR, 0),
DX86ScheduleAtom.td144 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86ISelDAGToDAG.cpp3599 SDValue Extract = CurDAG->getNode(X86ISD::BEXTR, DL, XVT, X, Control); in matchBitExtract()
5336 SDValue BEXTR = SDValue(NewNode, 0); in Select() local
5337 NewNode = CurDAG->getMachineNode(TestOpc, dl, MVT::i32, BEXTR, BEXTR); in Select()
DX86Schedule.td199 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86ScheduleBtVer2.td248 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86SchedSandyBridge.td190 // BMI1 BEXTR/BLS, BMI2 BZHI
DX86ScheduleBdVer2.td590 // BMI1 BEXTR, BMI2 BZHI
DX86.td495 "Indicates that the BEXTR instruction is implemented as a single uop "

12