LLVM: lib/CodeGen/MachineSizeOpts.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

18

19using namespace llvm;

20

26

35

41 if (MBB->getParent()->getFunction().hasOptSize())

42 return true;

44}

45

51 if (MBB->getParent()->getFunction().hasOptSize())

52 return true;

53 if (!MBFIW)

54 return false;

57 QueryType);

58}

assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")

bool hasOptSize() const

Optimize this function for size (-Os) or minimum size (-Oz).

BlockFrequency getBlockFreq(const MachineBasicBlock *MBB) const

const MachineBlockFrequencyInfo & getMBFI() const

MachineBlockFrequencyInfo pass uses BlockFrequencyInfoImpl implementation to estimate machine basic b...

Function & getFunction()

Return the LLVM function that this machine code represents.

Analysis providing profile information.

This is an optimization pass for GlobalISel generic memory operations.

LLVM_ABI bool shouldOptimizeForSize(const MachineFunction *MF, ProfileSummaryInfo *PSI, const MachineBlockFrequencyInfo *BFI, PGSOQueryType QueryType=PGSOQueryType::Other)

Returns true if machine function MF is suggested to be size-optimized based on the profile.

Definition MachineSizeOpts.cpp:27

bool shouldFuncOptimizeForSizeImpl(const FuncT *F, ProfileSummaryInfo *PSI, BFIT *BFI, PGSOQueryType QueryType)

LLVM_ABI cl::opt< int > PgsoCutoffSampleProf

LLVM_ABI cl::opt< bool > EnablePGSO

LLVM_ABI cl::opt< int > PgsoCutoffInstrProf

bool shouldOptimizeForSizeImpl(BlockTOrBlockFreq BBOrBlockFreq, ProfileSummaryInfo *PSI, BFIT *BFI, PGSOQueryType QueryType)

LLVM_ABI cl::opt< bool > ForcePGSO

LLVM_ABI cl::opt< bool > PGSOLargeWorkingSetSizeOnly