LLVM 20.0.0git
|
Expand non-8-bit and non-16-bit shift instructions (shl, lshr, ashr) to inline loops, just like avr-gcc. More...
Go to the source code of this file.
Functions | |
INITIALIZE_PASS (AVRShiftExpand, "avr-shift-expand", "AVR Shift Expansion", false, false) Pass *llvm | |
Expand non-8-bit and non-16-bit shift instructions (shl, lshr, ashr) to inline loops, just like avr-gcc.
This must be done in IR because otherwise the type legalizer will turn 32-bit shifts into (non-existing) library calls such as __ashlsi3.
Definition in file AVRShiftExpand.cpp.
INITIALIZE_PASS | ( | AVRShiftExpand | , |
"avr-shift-expand" | , | ||
"AVR Shift Expansion" | , | ||
false | , | ||
false | |||
) |
Definition at line 43 of file AVRShiftExpand.cpp.