diff options
| author | Bill Wendling <isanbard@gmail.com> | 2012-05-01 08:27:43 +0000 | 
|---|---|---|
| committer | Bill Wendling <isanbard@gmail.com> | 2012-05-01 08:27:43 +0000 | 
| commit | b12f16e75ff8cb213bed9b48facd51aae5ebff73 (patch) | |
| tree | 6a0b763188cd9c2cca88a9b26bf6242fe41b856b /llvm/lib/Target/ARM | |
| parent | eb590aa9560b383823b4d992a1f03638a5246704 (diff) | |
| download | bcm5719-llvm-b12f16e75ff8cb213bed9b48facd51aae5ebff73.tar.gz bcm5719-llvm-b12f16e75ff8cb213bed9b48facd51aae5ebff73.zip | |
Change the PassManager from a reference to a pointer.
The TargetPassManager's default constructor wants to initialize the PassManager
to 'null'. But it's illegal to bind a null reference to a null l-value. Make the
ivar a pointer instead.
PR12468
llvm-svn: 155902
Diffstat (limited to 'llvm/lib/Target/ARM')
| -rw-r--r-- | llvm/lib/Target/ARM/ARMTargetMachine.cpp | 20 | 
1 files changed, 10 insertions, 10 deletions
| diff --git a/llvm/lib/Target/ARM/ARMTargetMachine.cpp b/llvm/lib/Target/ARM/ARMTargetMachine.cpp index 047efc23a4e..9aa83089202 100644 --- a/llvm/lib/Target/ARM/ARMTargetMachine.cpp +++ b/llvm/lib/Target/ARM/ARMTargetMachine.cpp @@ -136,22 +136,22 @@ TargetPassConfig *ARMBaseTargetMachine::createPassConfig(PassManagerBase &PM) {  bool ARMPassConfig::addPreISel() {    if (TM->getOptLevel() != CodeGenOpt::None && EnableGlobalMerge) -    PM.add(createGlobalMergePass(TM->getTargetLowering())); +    PM->add(createGlobalMergePass(TM->getTargetLowering()));    return false;  }  bool ARMPassConfig::addInstSelector() { -  PM.add(createARMISelDag(getARMTargetMachine(), getOptLevel())); +  PM->add(createARMISelDag(getARMTargetMachine(), getOptLevel()));    return false;  }  bool ARMPassConfig::addPreRegAlloc() {    // FIXME: temporarily disabling load / store optimization pass for Thumb1.    if (getOptLevel() != CodeGenOpt::None && !getARMSubtarget().isThumb1Only()) -    PM.add(createARMLoadStoreOptimizationPass(true)); +    PM->add(createARMLoadStoreOptimizationPass(true));    if (getOptLevel() != CodeGenOpt::None && getARMSubtarget().isCortexA9()) -    PM.add(createMLxExpansionPass()); +    PM->add(createMLxExpansionPass());    return true;  } @@ -159,23 +159,23 @@ bool ARMPassConfig::addPreSched2() {    // FIXME: temporarily disabling load / store optimization pass for Thumb1.    if (getOptLevel() != CodeGenOpt::None) {      if (!getARMSubtarget().isThumb1Only()) { -      PM.add(createARMLoadStoreOptimizationPass()); +      PM->add(createARMLoadStoreOptimizationPass());        printAndVerify("After ARM load / store optimizer");      }      if (getARMSubtarget().hasNEON()) -      PM.add(createExecutionDependencyFixPass(&ARM::DPRRegClass)); +      PM->add(createExecutionDependencyFixPass(&ARM::DPRRegClass));    }    // Expand some pseudo instructions into multiple instructions to allow    // proper scheduling. -  PM.add(createARMExpandPseudoPass()); +  PM->add(createARMExpandPseudoPass());    if (getOptLevel() != CodeGenOpt::None) {      if (!getARMSubtarget().isThumb1Only())        addPass(IfConverterID);    }    if (getARMSubtarget().isThumb2()) -    PM.add(createThumb2ITBlockPass()); +    PM->add(createThumb2ITBlockPass());    return true;  } @@ -183,13 +183,13 @@ bool ARMPassConfig::addPreSched2() {  bool ARMPassConfig::addPreEmitPass() {    if (getARMSubtarget().isThumb2()) {      if (!getARMSubtarget().prefers32BitThumb()) -      PM.add(createThumb2SizeReductionPass()); +      PM->add(createThumb2SizeReductionPass());      // Constant island pass work on unbundled instructions.      addPass(UnpackMachineBundlesID);    } -  PM.add(createARMConstantIslandPass()); +  PM->add(createARMConstantIslandPass());    return true;  } | 

