[LLVMdev] Tail Duplication Questions
    dag at cray.com 
    dag at cray.com
       
    Wed Oct 31 08:17:29 PDT 2012
    
    
  
I'm reading up on LLVM's implementation of tail duplication and the
description is confusing:
http://llvm.org/docs/Passes.html
  -tailduplicate: Tail Duplication
  This pass performs a limited form of tail duplication, intended to
  simplify CFGs by removing some unconditional branches. This pass is
  necessary to straighten out loops created by the C front-end, but also
  is capable of making other code nicer. After this pass is run, the CFG
  simplify pass should be run to clean up the mess.
First, lib/CodeGen/TailDuplication.cpp says the pass name is
-tailduplication, not -tailduplicate.  Am I looking at the right pass?
  INITIALIZE_PASS(TailDuplicatePass, "tailduplication", "Tail Duplication",
                  false, false)
Second, SimplifyCFG is a FunctionPass, not a MachineFunctionPass.  What
cleanup pass is this description really referring to?
Thanks!
                         -David
    
    
More information about the llvm-dev
mailing list