Home
last modified time | relevance | path

Searched refs:BMI2 (Results 1 – 25 of 58) sorted by relevance

123

/external/llvm-project/llvm/test/CodeGen/X86/
Dshift-bmi2.ll2 ; RUN: llc -mtriple=i386-unknown-unknown -mcpu=core-avx2 < %s | FileCheck --check-prefix=BMI2 %s
6 ; BMI2-LABEL: shl32:
7 ; BMI2: # %bb.0:
8 ; BMI2-NEXT: movb {{[0-9]+}}(%esp), %al
9 ; BMI2-NEXT: shlxl %eax, {{[0-9]+}}(%esp), %eax
10 ; BMI2-NEXT: retl
21 ; BMI2-LABEL: shl32i:
22 ; BMI2: # %bb.0:
23 ; BMI2-NEXT: movl {{[0-9]+}}(%esp), %eax
24 ; BMI2-NEXT: shll $5, %eax
[all …]
Dclear-lowbits.ll5 …ple=i686-unknown-linux-gnu -mattr=+bmi,+tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X86,X86-BMI2
6 …ple=i686-unknown-linux-gnu -mattr=+bmi,-tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X86,X86-BMI2
10 …e=x86_64-unknown-linux-gnu -mattr=+bmi,+tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X64,X64-BMI2
11 …e=x86_64-unknown-linux-gnu -mattr=+bmi,-tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X64,X64-BMI2
18 ; are equivalent, but we prefer the second variant if we have BMI2.
108 ; X86-BMI2-LABEL: clear_lowbits16_c0:
109 ; X86-BMI2: # %bb.0:
110 ; X86-BMI2-NEXT: movzwl {{[0-9]+}}(%esp), %eax
111 ; X86-BMI2-NEXT: movb {{[0-9]+}}(%esp), %cl
112 ; X86-BMI2-NEXT: shrxl %ecx, %eax, %eax
[all …]
Dclear-highbits.ll5 …86-unknown-linux-gnu -mattr=+cmov,+bmi,+tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X86,X86-BMI2
6 …86-unknown-linux-gnu -mattr=+cmov,+bmi,-tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X86,X86-BMI2
10 …e=x86_64-unknown-linux-gnu -mattr=+bmi,+tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X64,X64-BMI2
11 …e=x86_64-unknown-linux-gnu -mattr=+bmi,-tbm,+bmi2 < %s | FileCheck %s --check-prefixes=X64,X64-BMI2
16 ; are equivalent, but we prefer the second variant if we have BMI2.
18 ; We do not test the variant where y = (32 - z), because that is BMI2's BZHI.
109 ; X86-BMI2-LABEL: clear_highbits16_c0:
110 ; X86-BMI2: # %bb.0:
111 ; X86-BMI2-NEXT: movb {{[0-9]+}}(%esp), %al
112 ; X86-BMI2-NEXT: shlxl %eax, {{[0-9]+}}(%esp), %ecx
[all …]
Dhoist-and-by-const-from-lshr-in-eqcmp-zero.ll4 … %s | FileCheck %s --check-prefixes=CHECK,X86,V0123,X86-V0123,SSE2,X86-SSE2,BMI2,X86-BMI2,V2,X86-V2
5 …i2,+avx2 < %s | FileCheck %s --check-prefixes=CHECK,X86,V0123,X86-V0123,BMI2,X86-BMI2,AVX2,X86-AVX2
8 … %s | FileCheck %s --check-prefixes=CHECK,X64,V0123,X64-V0123,SSE2,X64-SSE2,BMI2,X64-BMI2,V2,X64-V2
9 …i2,+avx2 < %s | FileCheck %s --check-prefixes=CHECK,X64,V0123,X64-V0123,BMI2,X64-BMI2,AVX2,X64-AVX2
106 ; X86-BMI2-LABEL: scalar_i16_signbit_eq:
107 ; X86-BMI2: # %bb.0:
108 ; X86-BMI2-NEXT: movb {{[0-9]+}}(%esp), %al
109 ; X86-BMI2-NEXT: shlxl %eax, {{[0-9]+}}(%esp), %eax
110 ; X86-BMI2-NEXT: testl $32768, %eax # imm = 0x8000
111 ; X86-BMI2-NEXT: sete %al
[all …]
Drot64.ll4 …N: llc < %s -mtriple=x86_64-- -mcpu=core-avx2 | FileCheck %s --check-prefix=ALL --check-prefix=BMI2
83 ; BMI2-LABEL: xfoo:
84 ; BMI2: # %bb.0: # %entry
85 ; BMI2-NEXT: rorxq $57, %rdi, %rax
86 ; BMI2-NEXT: retq
107 ; BMI2-LABEL: xfoop:
108 ; BMI2: # %bb.0: # %entry
109 ; BMI2-NEXT: rorxq $57, (%rdi), %rax
110 ; BMI2-NEXT: retq
145 ; BMI2-LABEL: xun:
[all …]
Dhoist-and-by-const-from-shl-in-eqcmp-zero.ll4 … %s | FileCheck %s --check-prefixes=CHECK,X86,V0123,X86-V0123,SSE2,X86-SSE2,BMI2,X86-BMI2,V2,X86-V2
5 …i2,+avx2 < %s | FileCheck %s --check-prefixes=CHECK,X86,V0123,X86-V0123,BMI2,X86-BMI2,AVX2,X86-AVX2
8 … %s | FileCheck %s --check-prefixes=CHECK,X64,V0123,X64-V0123,SSE2,X64-SSE2,BMI2,X64-BMI2,V2,X64-V2
9 …i2,+avx2 < %s | FileCheck %s --check-prefixes=CHECK,X64,V0123,X64-V0123,BMI2,X64-BMI2,AVX2,X64-AVX2
102 ; X86-BMI2-LABEL: scalar_i16_signbit_eq:
103 ; X86-BMI2: # %bb.0:
104 ; X86-BMI2-NEXT: movzwl {{[0-9]+}}(%esp), %eax
105 ; X86-BMI2-NEXT: movb {{[0-9]+}}(%esp), %cl
106 ; X86-BMI2-NEXT: shrxl %ecx, %eax, %eax
107 ; X86-BMI2-NEXT: testl $32768, %eax # imm = 0x8000
[all …]
Drot32.ll4 … llc < %s -mtriple=i686-- -mcpu=core-avx2 | FileCheck %s --check-prefix=CHECK32 --check-prefix=BMI2
116 ; BMI2-LABEL: xfoo:
117 ; BMI2: # %bb.0: # %entry
118 ; BMI2-NEXT: rorxl $25, {{[0-9]+}}(%esp), %eax
119 ; BMI2-NEXT: retl
159 ; BMI2-LABEL: xfoop:
160 ; BMI2: # %bb.0: # %entry
161 ; BMI2-NEXT: movl {{[0-9]+}}(%esp), %eax
162 ; BMI2-NEXT: rorxl $25, (%eax), %eax
163 ; BMI2-NEXT: retl
[all …]
Dbmi-x86_64.ll3 …x86_64-unknown-unknown -mattr=+bmi,+bmi2 | FileCheck %s --check-prefixes=CHECK,BEXTR-SLOW,BMI2-SLOW
87 ; BMI2-SLOW-LABEL: bextr64d:
88 ; BMI2-SLOW: # %bb.0: # %entry
89 ; BMI2-SLOW-NEXT: movl $35, %eax
90 ; BMI2-SLOW-NEXT: bzhiq %rax, %rdi, %rax
91 ; BMI2-SLOW-NEXT: shrq $2, %rax
92 ; BMI2-SLOW-NEXT: retq
114 ; BMI2-SLOW-LABEL: bextr64d_load:
115 ; BMI2-SLOW: # %bb.0: # %entry
116 ; BMI2-SLOW-NEXT: movl $35, %eax
[all …]
Dshift-mask.ll10 …mtriple=x86_64-pc-linux -mcpu=znver1 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-BMI,X64-BMI2
11 …mtriple=x86_64-pc-linux -mcpu=znver2 | FileCheck %s --check-prefixes=X64,X64-SHIFT,X64-BMI,X64-BMI2
544 ; X64-BMI2-LABEL: test_i64_lshr_lshr_0:
545 ; X64-BMI2: # %bb.0:
546 ; X64-BMI2-NEXT: movb $61, %al
547 ; X64-BMI2-NEXT: bzhiq %rax, %rdi, %rax
548 ; X64-BMI2-NEXT: retq
/external/llvm/test/CodeGen/X86/
Dshift-bmi2.ll1 ; RUN: llc -mtriple=i386-unknown-unknown -mcpu=core-avx2 < %s | FileCheck --check-prefix=BMI2 %s
7 ; BMI2: shl32
8 ; BMI2: shlxl
9 ; BMI2: ret
19 ; BMI2: shl32i
20 ; BMI2-NOT: shlxl
21 ; BMI2: ret
32 ; BMI2: shl32p
33 ; BMI2: shlxl %{{.+}}, ({{.+}}), %{{.+}}
34 ; BMI2: ret
[all …]
Drot64.ll6 ; RUN: llc < %s -march=x86-64 -mcpu=core-avx2 | FileCheck %s --check-prefix=BMI2
46 ; BMI2-LABEL: xfoo:
47 ; BMI2: rorxq $57
56 ; BMI2-LABEL: xfoop:
57 ; BMI2: rorxq $57, ({{.+}}), %{{.+}}
75 ; BMI2-LABEL: xun:
76 ; BMI2: rorxq $7
85 ; BMI2-LABEL: xunp:
86 ; BMI2: rorxq $7, ({{.+}}), %{{.+}}
Drot32.ll2 ; RUN: llc < %s -march=x86 -mcpu=core-avx2 | FileCheck %s --check-prefix=BMI2
52 ; BMI2-LABEL: xfoo:
53 ; BMI2: rorxl $25
62 ; BMI2-LABEL: xfoop:
63 ; BMI2: rorxl $25, ({{.+}}), %{{.+}}
85 ; BMI2-LABEL: xun:
86 ; BMI2: rorxl $7
95 ; BMI2-LABEL: xunp:
96 ; BMI2: rorxl $7, ({{.+}}), %{{.+}}
/external/skqp/src/core/
DSkCpu.h26 BMI2 = 1 << 11, enumerator
28 HSW = AVX2 | BMI1 | BMI2 | F16C | FMA,
DSkCpu.cpp57 if (abcd[1] & (1<<8)) { features |= SkCpu::BMI2; } in read_cpu_features()
/external/skia/src/core/
DSkCpu.h26 BMI2 = 1 << 11, enumerator
28 HSW = AVX2 | BMI1 | BMI2 | F16C | FMA,
DSkCpu.cpp59 if (abcd[1] & (1<<8)) { features |= SkCpu::BMI2; } in read_cpu_features()
/external/mesa3d/src/gallium/drivers/swr/rasterizer/jitter/
DJitManager.h74 bool BMI2(void) { return bForceAVX ? 0 : InstructionSet::BMI2(); } in BMI2() function
/external/tensorflow/tensorflow/core/platform/
Dcpu_info.h102 BMI2 = 23, enumerator
Dcpu_info.cc227 case BMI2: return cpuid->have_bmi2_; in TestFeature()
/external/marisa-trie/
Dconfigure.ac181 AC_MSG_CHECKING([whether to use BMI2])
184 [use BMI2 [default=no]])],
277 AS_ECHO([" BMI2: ${enable_bmi2}"])
/external/zstd/lib/
DREADME.md136 which can detect at runtime the presence of BMI2 instructions, and use them only if present.
141 or when BMI2 instruction set is _required_ by the compiler command line
142 (in this case, only the BMI2 code path is generated).
143 Setting this macro will either force to generate the BMI2 dispatcher (1)
/external/mesa3d/src/gallium/drivers/swr/rasterizer/common/
Disa.hpp83 bool BMI2(void) { return CPU_Rep.f_7_EBX_[8]; } in BMI2() function in InstructionSet
/external/llvm-project/libc/cmake/modules/
DLLVMLibCCheckCpuFeatures.cmake99 # a specific features implies other features (e.g. BMI2 implies SSE2 and SSE).
/external/llvm-project/llvm/include/llvm/Support/
DX86TargetParser.def120 X86_FEATURE_COMPAT(BMI2, "bmi2")
/external/llvm-project/llvm/lib/Target/X86/
DX86ScheduleSLM.td160 // BMI1 BEXTR/BLS, BMI2 BZHI

123