In these test updates for instruction referencing, I've added specific instruction-referencing modes, and kept the DBG_VALUE-based variable location check lines. This is because argument handling is really fiddly, and I figured it's worth duplicating the testing to ensure it's definitely correct. There's also (dbg-value-superreg-copy2.mir) a test for where variable locations go when virtual registers are coalesced together. I don't think there's an instruction referencing specific test for this, so figured that's worth duplicating too.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Hi Snow Rider 3D
Your help is much appreciated.
;; In instruction referencing mode, we should refer to the instruction number ;; of the earlier DBG_PHIs. ; INSTRREF: ADJCALLSTACKUP ; INSTRREF-NOT: DBG_ ; INSTRREF-DAG: DBG_INSTR_REF 1, 0, ![[S1]], !DIExpression(DW_OP_LLVM_fragment, 0, 64) ; INSTRREF-DAG: DBG_INSTR_REF 2, 0, ![[S1]], !DIExpression(DW_OP_LLVM_fragment, 64, 64) ; And then no more DBG_ instructions before the add. ; COMMON-NOT: DBG_ ; COMMON: ADD32rr