[PATCH] D117831: [AVR] Remove regalloc workaround for LDDWRdPtrQ
Tim Walls via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 7 04:27:50 PST 2022
timwalls added a comment.
Herald added a project: All.
Hi Folks,
I hate to say this, but I fear rolling this back may have been premature :-/. I am not even in the same universe as a MRE at the moment, just trying to work out why "stuff that used to work stopped working" recently, and I am getting errors like this:
*** Bad machine code: Using an undefined physical register ***
- function: _ZN93_$LT$avr_oxide..devices..button..Button$LT$S$GT$$u20$as$u20$avr_oxide..event..EventSource$GT$13process_event17hb980a9f4dd8ffea1E
- basic block: %bb.2 (0x106888698)
- instruction: early-clobber $r31r30 = LDDWRdPtrQ killed $r31r30, 2, debug-location !10410 :: (load (s16) from %ir.26, align 1, !alias.scope !10396); /Users/timwa/Development/rust-avr-nightly-builder/build/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1861:38 @[ /Users/timwa/Development/avr-oxide/src/devices/button.rs:214:9 ]
- operand 1: killed $r31r30
LLVM ERROR: Found 1 machine code errors.
(And of course the faithful `ran out of registers...` error.)
Re-applying this workaround patch makes the error go away :/. I will endeavour to reduce to a smaller example of course, right now it's buried in the middle of a codebase, but just to flag it up early - :-(.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D117831/new/
https://reviews.llvm.org/D117831
More information about the llvm-commits
mailing list