[PATCH] Scalar/PHI code genration

Johannes Doerfert doerfert at cs.uni-saarland.de
Mon Feb 9 10:34:10 PST 2015


Hi grosser, sebpop, simbuerg, zinob,

  Added scalar and phi code generation to the backend, hence making the polly
  prepare and independent block pass obsolete.

  Initial statistics with the LLVM test suite show that we detect now more
  SCoPs and while they are smaller (wrt. #basic blocks), they still cover the
  same source lines. Additionally, the compile time was decreased for various
  benchmarks while the execution time varies only very little.

  TODO: - add more of my unit tests
        - create unit tests for the special cases that occured in lnt
        - add more explaination in the commit message
        - do a more comprehensive comparison with the polly prepare and
          independent blocks passes.

  FIXME: There is/was one failing lnt test (MultiSource/Applications/oggenc),
         however the problematic SCoP doesn't even contain scalar
         accesses but only real memory accesses with simple __and__
         existentially quantified access functions. For now it's safe to
         assume this is just a new, failing, SCoP, not a error in this
         patch.

http://reviews.llvm.org/D7513

Files:
  include/polly/CodeGen/BlockGenerators.h
  include/polly/ScopInfo.h
  lib/Analysis/ScopInfo.cpp
  lib/CodeGen/BlockGenerators.cpp
  lib/CodeGen/IslCodeGeneration.cpp
  test/Isl/CodeGen/phi_loop_carried_float.ll
  test/Isl/CodeGen/phi_loop_carried_float_escape.ll
  test/Isl/CodeGen/phi_scalar_simple_1.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D7513.19598.patch
Type: text/x-patch
Size: 39507 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150209/73ac381b/attachment.bin>


More information about the llvm-commits mailing list