[llvm] [NVPTX] Attempt to load params using symbol addition node directly (PR #119935)
Artem Belevich via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 7 17:24:52 PST 2025
================
@@ -0,0 +1,44 @@
+; RUN: llc < %s -march=nvptx64 --debug-counter=dagcombine=0 | FileCheck %s
+; RUN: %if ptxas %{ llc < %s -march=nvptx64 | %ptxas-verify %}
+
+%struct.8float = type <{ [8 x float] }>
+
+declare i32 @callee(%struct.8float %a)
+
+define i32 @test(%struct.8float alignstack(32) %data) {
+ ;CHECK-NOT: add.
+ ;CHECK-DAG: ld.param.u8 %r{{.*}}, [test_param_0];
+ ;CHECK-DAG: ld.param.u8 %r{{.*}}, [test_param_0+1];
----------------
Artem-B wrote:
I have no opinion on debug counters themselves. But whatever they do, compiler output should not depend on assertions being enabled or not.
If they are intended to modify compiler output it's fine, just don't use the assertion on/off as the control knob for that.
Right now I can't tell if those debug counters are doing something wrong, and NVPTX was never intended to handle the IR modified that way, or if the debug counter-enabled mode does things correctly, and just happens to expose a corner case NVPTX does not handle correctly, which we need to fix.
https://github.com/llvm/llvm-project/pull/119935
More information about the llvm-commits
mailing list