[llvm-bugs] [Bug 38008] New: [llvm-exegesis] Can't test any SSE/AVX instructions on pre-AVX hardware
via llvm-bugs
llvm-bugs at lists.llvm.org
Sun Jul 1 02:25:03 PDT 2018
https://bugs.llvm.org/show_bug.cgi?id=38008
Bug ID: 38008
Summary: [llvm-exegesis] Can't test any SSE/AVX instructions on
pre-AVX hardware
Product: new-bugs
Version: unspecified
Hardware: PC
OS: Windows NT
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedbugs at nondot.org
Reporter: llvm-dev at redking.me.uk
CC: clement.courbet at gmail.com, craig.topper at gmail.com,
gchatelet at google.com, llvm-bugs at lists.llvm.org
It looks like llvm-exegesis is always using VEX encoded instructions in the
setRegToConstant function:
if (llvm::X86::VR128XRegClass.contains(Reg)) {
return setVectorRegToConstant(Reg, 16, llvm::X86::VMOVDQUrm);
For machines without AVX this will fail - it needs to be llvm::X86::MOVDQUrm on
those targets.
If we ever go as far as testing machines without SSE2 (PentiumIII etc) then we
would need to use the SSE1 llvm::X86::MOVUPSrm instead.
You might also want to check the reg classes as IIRC VR128X/VR256X are only
supposed to be used for AVX512 capable targets.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20180701/7563e9a6/attachment.html>
More information about the llvm-bugs
mailing list