[llvm] r286095 - [AVR] Enable the ISel, frame analyzer, and alloca passes

Dylan McKay via llvm-commits llvm-commits at lists.llvm.org
Sun Nov 6 22:02:55 PST 2016


Author: dylanmckay
Date: Mon Nov  7 00:02:55 2016
New Revision: 286095

URL: http://llvm.org/viewvc/llvm-project?rev=286095&view=rev
Log:
[AVR] Enable the ISel, frame analyzer, and alloca passes

Modified:
    llvm/trunk/lib/Target/AVR/AVRTargetMachine.cpp

Modified: llvm/trunk/lib/Target/AVR/AVRTargetMachine.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AVR/AVRTargetMachine.cpp?rev=286095&r1=286094&r2=286095&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AVR/AVRTargetMachine.cpp (original)
+++ llvm/trunk/lib/Target/AVR/AVRTargetMachine.cpp Mon Nov  7 00:02:55 2016
@@ -93,15 +93,21 @@ const AVRSubtarget *AVRTargetMachine::ge
 //===----------------------------------------------------------------------===//
 
 bool AVRPassConfig::addInstSelector() {
+  // Install an instruction selector.
+  addPass(createAVRISelDag(getAVRTargetMachine(), getOptLevel()));
+  // Create the frame analyzer pass used by the PEI pass.
+  addPass(createAVRFrameAnalyzerPass());
+
   return false;
 }
 
 void AVRPassConfig::addPreRegAlloc() {
+  // Create the dynalloc SP save/restore pass to handle variable sized allocas.
+  addPass(createAVRDynAllocaSRPass());
 }
 
 void AVRPassConfig::addPreSched2() { }
 
-void AVRPassConfig::addPreEmitPass() {
-}
+void AVRPassConfig::addPreEmitPass() { }
 
 } // end of namespace llvm




More information about the llvm-commits mailing list