================
@@ -0,0 +1,33 @@
+; RUN: llc -O0 -mtriple=spirv-unknown-unknown %s -o - | FileCheck %s
----------------
Icohedron wrote:

Changing the triple to `-mtriple=spirv32-unknown-unknown` does indeed cause the 
test to fail at instruction selection

```
********************
FAIL: LLVM :: CodeGen/SPIRV/hlsl-intrinsics/reflect.ll (282 of 582)
******************** TEST 'LLVM :: CodeGen/SPIRV/hlsl-intrinsics/reflect.ll' 
FAILED ********************
Exit Code: 2

Command Output (stderr):
--
RUN: at line 1: /workspace/feature-reflect/build/bin/llc -O0 
-mtriple=spirv32-unknown-unknown 
/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll 
-o - | /workspace/feature-reflect/build/bin/FileCheck 
/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll
+ /workspace/feature-reflect/build/bin/FileCheck 
/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll
+ /workspace/feature-reflect/build/bin/llc -O0 -mtriple=spirv32-unknown-unknown 
/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll 
-o -
LLVM ERROR: cannot select: %6:id(<2 x s64>) = G_INTRINSIC 
intrinsic(@llvm.spv.reflect), %0:vfid(<2 x s64>), %1:vfid(<2 x s64>) (in 
function: reflect_half4)
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and 
include the crash backtrace.
Stack dump:
0.      Program arguments: /workspace/feature-reflect/build/bin/llc -O0 
-mtriple=spirv32-unknown-unknown 
/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll 
-o -
1.      Running pass 'Function Pass Manager' on module 
'/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll'.
2.      Running pass 'InstructionSelect' on function '@reflect_half4'
 #0 0x00005a7a8f13318f llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) 
/workspace/feature-reflect/llvm/lib/Support/Unix/Signals.inc:804:3
 #1 0x00005a7a8f130a5f llvm::sys::RunSignalHandlers() 
/workspace/feature-reflect/llvm/lib/Support/Signals.cpp:105:20
 #2 0x00005a7a8f130db6 SignalHandler(int) 
/workspace/feature-reflect/llvm/lib/Support/Unix/Signals.inc:417:1
 #3 0x000071ee82242520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x000071ee822969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #5 0x000071ee82242476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #6 0x000071ee822287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #7 0x00005a7a8f08b463 (/workspace/feature-reflect/build/bin/llc+0x3631463)
 #8 0x00005a7a8f664b32 reportGISelDiagnostic(llvm::DiagnosticSeverity, 
llvm::MachineFunction&, llvm::TargetPassConfig const&, 
llvm::MachineOptimizationRemarkEmitter&, 
llvm::MachineOptimizationRemarkMissed&) 
/workspace/feature-reflect/llvm/lib/CodeGen/GlobalISel/Utils.cpp:248:23
 #9 0x00005a7a8f666a55 
llvm::DiagnosticInfoOptimizationBase::~DiagnosticInfoOptimizationBase() 
/workspace/feature-reflect/llvm/include/llvm/IR/DiagnosticInfo.h:486:7
#10 0x00005a7a8f666a55 
llvm::DiagnosticInfoMIROptimization::~DiagnosticInfoMIROptimization() 
/workspace/feature-reflect/llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h:31:7
#11 0x00005a7a8f666a55 
llvm::MachineOptimizationRemarkMissed::~MachineOptimizationRemarkMissed() 
/workspace/feature-reflect/llvm/include/llvm/CodeGen/MachineOptimizationRemarkEmitter.h:85:7
#12 0x00005a7a8f666a55 llvm::reportGISelFailure(llvm::MachineFunction&, 
llvm::TargetPassConfig const&, llvm::MachineOptimizationRemarkEmitter&, char 
const*, llvm::StringRef, llvm::MachineInstr const&) 
/workspace/feature-reflect/llvm/lib/CodeGen/GlobalISel/Utils.cpp:277:1
#13 0x00005a7a8f5ce077 
llvm::SmallVectorTemplateCommon<std::tuple<llvm::MachineBasicBlock*, 
llvm::MachineBasicBlock**, llvm::MachineBasicBlock**>, void>::begin() 
/workspace/feature-reflect/llvm/include/llvm/ADT/SmallVector.h:267:45
#14 0x00005a7a8f5ce077 
llvm::SmallVectorTemplateCommon<std::tuple<llvm::MachineBasicBlock*, 
llvm::MachineBasicBlock**, llvm::MachineBasicBlock**>, void>::end() 
/workspace/feature-reflect/llvm/include/llvm/ADT/SmallVector.h:269:32
#15 0x00005a7a8f5ce077 llvm::SmallVector<std::tuple<llvm::MachineBasicBlock*, 
llvm::MachineBasicBlock**, llvm::MachineBasicBlock**>, 8u>::~SmallVector() 
/workspace/feature-reflect/llvm/include/llvm/ADT/SmallVector.h:1202:24
#16 0x00005a7a8f5ce077 llvm::po_iterator<llvm::MachineFunction*, 
llvm::SmallPtrSet<llvm::MachineBasicBlock*, 8u>, false, 
llvm::GraphTraits<llvm::MachineFunction*>>::~po_iterator() 
/workspace/feature-reflect/llvm/include/llvm/ADT/PostOrderIterator.h:97:7
#17 0x00005a7a8f5ce077 
llvm::InstructionSelect::selectMachineFunction(llvm::MachineFunction&) 
/workspace/feature-reflect/llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp:225:5
#18 0x00005a7a8f5cf70c operator() 
/workspace/feature-reflect/llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp:145:59
#19 0x00005a7a8f5cf70c ~scope_exit 
/workspace/feature-reflect/llvm/include/llvm/ADT/ScopeExit.h:46:19
#20 0x00005a7a8f5cf70c 
llvm::InstructionSelect::runOnMachineFunction(llvm::MachineFunction&) 
/workspace/feature-reflect/llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp:157:1
#21 0x00005a7a8f5cf70c 
llvm::InstructionSelect::runOnMachineFunction(llvm::MachineFunction&) 
/workspace/feature-reflect/llvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp:134:6
#22 0x00005a7a8dfbf72a 
llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (.part.0) 
/workspace/feature-reflect/llvm/lib/CodeGen/MachineFunctionPass.cpp:94:33
#23 0x00005a7a8e576eca llvm::FPPassManager::runOnFunction(llvm::Function&) 
/workspace/feature-reflect/llvm/lib/IR/LegacyPassManager.cpp:1416:7
#24 0x00005a7a8e577119 
llvm::ilist_detail::node_base_prevnext<llvm::ilist_node_base<true, void>, 
true>::getNext() const 
/workspace/feature-reflect/llvm/include/llvm/ADT/ilist_node_base.h:42:38
#25 0x00005a7a8e577119 
llvm::ilist_node_impl<llvm::ilist_detail::node_options<llvm::Function, true, 
false, void, false, void>>::getNext() 
/workspace/feature-reflect/llvm/include/llvm/ADT/ilist_node.h:117:66
#26 0x00005a7a8e577119 
llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Function, true, 
false, void, false, void>, false, false>::operator++() 
/workspace/feature-reflect/llvm/include/llvm/ADT/ilist_iterator.h:187:25
#27 0x00005a7a8e577119 llvm::FPPassManager::runOnModule(llvm::Module&) 
/workspace/feature-reflect/llvm/lib/IR/LegacyPassManager.cpp:1451:22
#28 0x00005a7a8e5779c0 runOnModule 
/workspace/feature-reflect/llvm/lib/IR/LegacyPassManager.cpp:1528:7
#29 0x00005a7a8e5779c0 llvm::legacy::PassManagerImpl::run(llvm::Module&) 
/workspace/feature-reflect/llvm/lib/IR/LegacyPassManager.cpp:539:55
#30 0x00005a7a8d4f741f compileModule(char**, llvm::LLVMContext&) 
/workspace/feature-reflect/llvm/tools/llc/llc.cpp:753:34
#31 0x00005a7a8d4f7de6 main 
/workspace/feature-reflect/llvm/tools/llc/llc.cpp:411:35
#32 0x000071ee82229d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#33 0x000071ee82229e40 __libc_start_main 
(/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#34 0x00005a7a8d4e9e65 _start 
(/workspace/feature-reflect/build/bin/llc+0x1a8fe65)
FileCheck error: '<stdin>' is empty.
FileCheck command line:  /workspace/feature-reflect/build/bin/FileCheck 
/workspace/feature-reflect/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/reflect.ll
```

https://github.com/llvm/llvm-project/pull/122992
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to