mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
2fd80c3d94
reduce down to a single value. InstCombine already does this transformation but DAG legalization may introduce new opportunities. This has turned out to be important for ARM where 64-bit values are split up during type legalization: InstCombine is not able to remove the PHI cycles on the 64-bit values but the separate 32-bit values can be optimized. I measured the compile time impact of this (running llc on 176.gcc) and it was not significant. llvm-svn: 95951
77 lines
1.7 KiB
CMake
77 lines
1.7 KiB
CMake
add_llvm_library(LLVMCodeGen
|
|
AggressiveAntiDepBreaker.cpp
|
|
BranchFolding.cpp
|
|
CalcSpillWeights.cpp
|
|
CodePlacementOpt.cpp
|
|
CriticalAntiDepBreaker.cpp
|
|
DeadMachineInstructionElim.cpp
|
|
DwarfEHPrepare.cpp
|
|
ELFCodeEmitter.cpp
|
|
ELFWriter.cpp
|
|
ExactHazardRecognizer.cpp
|
|
GCMetadata.cpp
|
|
GCMetadataPrinter.cpp
|
|
GCStrategy.cpp
|
|
IfConversion.cpp
|
|
IntrinsicLowering.cpp
|
|
LLVMTargetMachine.cpp
|
|
LatencyPriorityQueue.cpp
|
|
LiveInterval.cpp
|
|
LiveIntervalAnalysis.cpp
|
|
LiveStackAnalysis.cpp
|
|
LiveVariables.cpp
|
|
LowerSubregs.cpp
|
|
MachineBasicBlock.cpp
|
|
MachineDominators.cpp
|
|
MachineFunction.cpp
|
|
MachineFunctionAnalysis.cpp
|
|
MachineFunctionPass.cpp
|
|
MachineInstr.cpp
|
|
MachineLICM.cpp
|
|
MachineLoopInfo.cpp
|
|
MachineModuleInfo.cpp
|
|
MachineModuleInfoImpls.cpp
|
|
MachinePassRegistry.cpp
|
|
MachineRegisterInfo.cpp
|
|
MachineSSAUpdater.cpp
|
|
MachineSink.cpp
|
|
MachineVerifier.cpp
|
|
ObjectCodeEmitter.cpp
|
|
OcamlGC.cpp
|
|
OptimizeExts.cpp
|
|
OptimizePHIs.cpp
|
|
PHIElimination.cpp
|
|
Passes.cpp
|
|
PostRASchedulerList.cpp
|
|
PreAllocSplitting.cpp
|
|
ProcessImplicitDefs.cpp
|
|
PrologEpilogInserter.cpp
|
|
PseudoSourceValue.cpp
|
|
RegAllocLinearScan.cpp
|
|
RegAllocLocal.cpp
|
|
RegAllocPBQP.cpp
|
|
RegisterCoalescer.cpp
|
|
RegisterScavenging.cpp
|
|
ScheduleDAG.cpp
|
|
ScheduleDAGEmit.cpp
|
|
ScheduleDAGInstrs.cpp
|
|
ScheduleDAGPrinter.cpp
|
|
ShadowStackGC.cpp
|
|
ShrinkWrapping.cpp
|
|
SimpleRegisterCoalescing.cpp
|
|
SjLjEHPrepare.cpp
|
|
SlotIndexes.cpp
|
|
Spiller.cpp
|
|
StackProtector.cpp
|
|
StackSlotColoring.cpp
|
|
StrongPHIElimination.cpp
|
|
TailDuplication.cpp
|
|
TargetInstrInfoImpl.cpp
|
|
TwoAddressInstructionPass.cpp
|
|
UnreachableBlockElim.cpp
|
|
VirtRegMap.cpp
|
|
VirtRegRewriter.cpp
|
|
)
|
|
|
|
target_link_libraries (LLVMCodeGen LLVMCore LLVMScalarOpts)
|