[Mlir-commits] [lldb] [llvm] [mlir] [DebugInfo] Add symbolic branches to DIExpression (PR #210850)
Scott Linder
llvmlistbot at llvm.org
Wed Aug 19 08:56:14 PDT 2026
================
@@ -4463,6 +4570,48 @@ TEST_F(DIExpressionTest, isValid) {
EXPECT_INVALID(dwarf::DW_OP_LLVM_arg, 0, dwarf::DW_OP_plus_uconst, 5,
dwarf::DW_OP_LLVM_entry_value, 1);
EXPECT_INVALID(dwarf::DW_OP_LLVM_arg, 1, dwarf::DW_OP_LLVM_entry_value, 1);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_label);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_bra);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_skip);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_label, 1, dwarf::DW_OP_LLVM_label, 1);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_bra, 1);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_skip, 1);
+ EXPECT_INVALID(dwarf::DW_OP_bra, 0);
+ EXPECT_INVALID(dwarf::DW_OP_skip, 0);
+ EXPECT_INVALID(dwarf::DW_OP_reg0, dwarf::DW_OP_bra, 0);
+ EXPECT_INVALID(dwarf::DW_OP_reg0, dwarf::DW_OP_skip, 0);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_arg, 0, dwarf::DW_OP_LLVM_label, 1);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_implicit_pointer, dwarf::DW_OP_LLVM_label,
+ 1);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_label, 1, dwarf::DW_OP_LLVM_tag_offset, 0);
+ // Converts and other stack ops can appear around labels and branches.
+ EXPECT_VALID(dwarf::DW_OP_LLVM_convert, 32, dwarf::DW_ATE_signed,
+ dwarf::DW_OP_LLVM_label, 1);
+ EXPECT_VALID(dwarf::DW_OP_LLVM_convert, 32, dwarf::DW_ATE_signed,
+ dwarf::DW_OP_LLVM_skip, 7, dwarf::DW_OP_LLVM_label, 7);
+ EXPECT_VALID(dwarf::DW_OP_LLVM_skip, 1, dwarf::DW_OP_LLVM_convert, 32,
+ dwarf::DW_ATE_signed, dwarf::DW_OP_LLVM_convert, 64,
+ dwarf::DW_ATE_signed, dwarf::DW_OP_LLVM_label, 1);
+ EXPECT_VALID(dwarf::DW_OP_LLVM_convert, 32, dwarf::DW_ATE_signed,
+ dwarf::DW_OP_dup, dwarf::DW_OP_LLVM_bra, 1,
+ dwarf::DW_OP_LLVM_convert, 32, dwarf::DW_ATE_signed,
+ dwarf::DW_OP_LLVM_label, 1);
+ EXPECT_INVALID(dwarf::DW_OP_stack_value, dwarf::DW_OP_LLVM_label, 1);
+ EXPECT_INVALID(dwarf::DW_OP_LLVM_fragment, 0, 32, dwarf::DW_OP_LLVM_label, 1);
+ // reg0 and entry_value normally end validation early, but they must not hide
----------------
slinder1 wrote:
Taking a look at https://github.com/llvm/llvm-project/pull/214057, it seems like maybe this is just a case of what-should-be-stacked PRs being reviewed independently, and comments/tests lingering between them?
https://github.com/llvm/llvm-project/pull/210850
More information about the Mlir-commits
mailing list