GBE: do intrinsics lowering pass earlier.
authorZhigang Gong <zhigang.gong@intel.com>
Tue, 30 Sep 2014 04:16:34 +0000 (12:16 +0800)
committerZhigang Gong <zhigang.gong@intel.com>
Fri, 17 Oct 2014 00:33:38 +0000 (08:33 +0800)
After the intrinsics lowering pass, it may introduce some new loops
which could be optimized nicely with the previous loop unrolling and
SROA PASS which especially may elminiate private data access.

Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
Reviewed-by: "Yang, Rong R" <rong.r.yang@intel.com>
backend/src/llvm/llvm_to_gen.cpp

index a3db919..9c8f1a5 100644 (file)
@@ -119,6 +119,7 @@ namespace gbe
     MPM.add(new TargetLibraryInfo(*libraryInfo));
     MPM.add(createTypeBasedAliasAnalysisPass());
     MPM.add(createBasicAliasAnalysisPass());
+    MPM.add(createIntrinsicLoweringPass());
     MPM.add(createGlobalOptimizerPass());     // Optimize out global vars
 
     MPM.add(createIPSCCPPass());              // IP SCCP