[llvm-bugs] [Bug 40387] New: [Optimization] Enable switch lookup tables in the AVR backend

via llvm-bugs llvm-bugs at lists.llvm.org
Sun Jan 20 21:38:30 PST 2019


https://bugs.llvm.org/show_bug.cgi?id=40387

            Bug ID: 40387
           Summary: [Optimization] Enable switch lookup tables in the AVR
                    backend
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: AVR
          Assignee: unassignedbugs at nondot.org
          Reporter: me at dylanmckay.io
                CC: llvm-bugs at lists.llvm.org

One example of a switch lookup table is the switch lookup table generated in
SimplifyCFG.

On AVR, a switch lookup table can only be placed into and loaded from program
memory if the MCU supports the LPM instruction. Otherwise, the table must be
loaded from RAM.

At the moment, switch lookup tables are broken on AVR.

There are two issues:

* https://github.com/avr-rust/rust/issues/47
* https://github.com/avr-rust/rust/issues/69

I have since disabled switch lookup tables on AVR to workaround these bugs.

We should get switch lookup tables working on AVR to enable more efficient
code.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190121/2995f092/attachment.html>


More information about the llvm-bugs mailing list