[llvm] r360395 - [AMDGPU] Pattern for v_xor3_b32

Michel Dänzer via llvm-commits llvm-commits at lists.llvm.org
Fri May 10 10:04:19 PDT 2019


Hi Stanislav,


On 2019-05-10 2:09 a.m., Stanislav Mekhanoshin via llvm-commits wrote:
> Author: rampitec
> Date: Thu May  9 17:09:01 2019
> New Revision: 360395
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=360395&view=rev
> Log:
> [AMDGPU] Pattern for v_xor3_b32
> 
> This also allows three op patterns to use increased constant bus
> limit of GFX10.
> 
> Differential Revision: https://reviews.llvm.org/D61763

This change broke the piglit test all at shaders@glsl-fs-loop-nested-if with radeonsi on Bonaire:

invalid bitwidth
UNREACHABLE executed at ../lib/Target/AMDGPU/SIInstrInfo.cpp:2537!

Thread 5 "shader_run:sh1" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffeb7fe700 (LWP 25947)]
__GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007ffff7466535 in __GI_abort () at abort.c:79
#2  0x00007ffff331e8d0 in llvm::llvm_unreachable_internal (msg=<optimized out>, file=0x7ffff20bcebe "../lib/Target/AMDGPU/SIInstrInfo.cpp", line=2537) at ../lib/Support/ErrorHandling.cpp:221
#3  0x00007ffff4924ce0 in llvm::SIInstrInfo::isInlineConstant (this=<optimized out>, Imm=...) at ../lib/Target/AMDGPU/SIInstrInfo.cpp:2537
#4  0x00007ffff483ae2c in (anonymous namespace)::AMDGPUDAGToDAGISel::CheckNodePredicateWithOperands (this=0x5555556a64b0, Node=<optimized out>, PredNo=<optimized out>, Operands=...) at lib/Target/AMDGPU/AMDGPUGenDAGISel.inc:72963
#5  0x00007ffff3aa9cbb in llvm::SelectionDAGISel::SelectCodeCommon (this=<optimized out>, NodeToMatch=<optimized out>, MatcherTable=<optimized out>, TableSize=<optimized out>) at ../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:3259
#6  0x00007ffff48389df in (anonymous namespace)::AMDGPUDAGToDAGISel::Select (this=<optimized out>, N=<optimized out>) at ../lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp:1910
#7  0x00007ffff3aa1998 in llvm::SelectionDAGISel::DoInstructionSelection (this=0x5555556a64b0) at ../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1139
#8  0x00007ffff3aa09bb in llvm::SelectionDAGISel::CodeGenAndEmitDAG (this=0x5555556700c0) at ../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:937
#9  0x00007ffff3a9dd27 in llvm::SelectionDAGISel::SelectAllBasicBlocks (this=0x5555556a64b0, Fn=...) at ../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1814
#10 0x00007ffff3a9a463 in llvm::SelectionDAGISel::runOnMachineFunction (this=0x5555556a64b0, mf=...) at ../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:496
#11 0x00007ffff36d096a in llvm::MachineFunctionPass::runOnFunction (this=0x5555556a64b0, F=...) at ../lib/CodeGen/MachineFunctionPass.cpp:73
#12 0x00007ffff34fc043 in llvm::FPPassManager::runOnFunction (this=0x5555556a5cf0, F=...) at ../lib/IR/LegacyPassManager.cpp:1648
#13 0x00007ffff4283f32 in (anonymous namespace)::CGPassManager::RunPassOnSCC (this=<optimized out>, P=0x5555556a5cf0, CurSCC=..., CG=..., CallGraphUpToDate=<optimized out>, DevirtualizedCall=<optimized out>) at ../lib/Analysis/CallGraphSCCPass.cpp:176
#14 (anonymous namespace)::CGPassManager::RunAllPassesOnSCC (this=<optimized out>, CurSCC=..., CG=..., DevirtualizedCall=<optimized out>) at ../lib/Analysis/CallGraphSCCPass.cpp:441
#15 (anonymous namespace)::CGPassManager::runOnModule (this=<optimized out>, M=...) at ../lib/Analysis/CallGraphSCCPass.cpp:497
#16 0x00007ffff34fc8c1 in (anonymous namespace)::MPPassManager::runOnModule (this=<optimized out>, M=...) at ../lib/IR/LegacyPassManager.cpp:1752
#17 llvm::legacy::PassManagerImpl::run (this=0x555555690970, M=...) at ../lib/IR/LegacyPassManager.cpp:1865
#18 0x00007ffff54cabf6 in ac_compile_module_to_binary (p=p at entry=0x5555556768a0, module=module at entry=0x7fffd80063b0, binary=binary at entry=0x7fffd8000be0) at /home/daenzer/src/llvm-git/llvm/include/llvm/IR/Module.h:914
#19 0x00007ffff54861b2 in si_llvm_compile (M=M at entry=0x7fffd80063b0, binary=binary at entry=0x7fffd8000be0, compiler=compiler at entry=0x55555562e7a0, debug=debug at entry=0x555555bf0630, less_optimized=less_optimized at entry=false)
    at ../src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c:103
#20 0x00007ffff547726c in si_compile_llvm (sscreen=sscreen at entry=0x55555562e030, binary=binary at entry=0x7fffd8000be0, conf=conf at entry=0x7fffd8000c30, compiler=compiler at entry=0x55555562e7a0, mod=0x7fffd80063b0, debug=debug at entry=0x555555bf0630, processor=1, 
    name=0x7ffff5af3950 "Pixel Shader", less_optimized=false) at ../src/gallium/drivers/radeonsi/si_shader.c:5531
#21 0x00007ffff5478c1a in si_compile_tgsi_shader (sscreen=sscreen at entry=0x55555562e030, compiler=compiler at entry=0x55555562e7a0, shader=shader at entry=0x7fffd8000b20, debug=debug at entry=0x555555bf0630) at ../src/gallium/drivers/radeonsi/si_shader.c:6668
#22 0x00007ffff543237f in si_init_shader_selector_async (job=job at entry=0x555555bf0610, thread_index=thread_index at entry=1) at ../src/gallium/drivers/radeonsi/si_state_shaders.c:2090
#23 0x00007ffff5897f3e in util_queue_thread_func (input=input at entry=0x555555631bb0) at ../src/util/u_queue.c:289
#24 0x00007ffff5897898 in impl_thrd_routine (p=<optimized out>) at ../include/c11/threads_posix.h:87
#25 0x00007ffff69bcfa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
#26 0x00007ffff753d4cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95


-- 
Earthling Michel Dänzer               |              https://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the llvm-commits mailing list