LLVM  14.0.0git
Functions
AVRShiftExpand.cpp File Reference
#include "AVR.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstIterator.h"
Include dependency graph for AVRShiftExpand.cpp:

Go to the source code of this file.

Functions

 INITIALIZE_PASS (AVRShiftExpand, "avr-shift-expand", "AVR Shift Expansion", false, false) Pass *llvm
 

Detailed Description

Expand 32-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.

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( AVRShiftExpand  ,
"avr-shift-expand ,
"AVR Shift Expansion"  ,
false  ,
false   
)

Definition at line 42 of file AVRShiftExpand.cpp.