Program Listing for File Preprocess.hh

Program Listing for File Preprocess.hh#

Return to documentation for file (src/midend/programTransformation/astOutlining/Preprocess.hh)

#if !defined(INC_LIAOUTLINER_PREPROCESS_HH)
#define INC_LIAOUTLINER_PREPROCESS_HH

class SgBasicBlock;
class SgVariableDeclaration;
class SgStatement;

namespace Outliner
{
  namespace Preprocess
  {

    // Outliner has some options which can be set by users. They have certain dependencies we want
    // to check and enforce.
    void checkAndPatchUpOptions();

    SgBasicBlock* preprocessOutlineTarget (SgStatement* s);

    SgBasicBlock* normalizeVarDecl (SgVariableDeclaration* s);

    SgBasicBlock* createBlock (SgStatement* s);

    SgBasicBlock* transformPreprocIfs (SgBasicBlock* b);

    SgBasicBlock* transformThisExprs (SgBasicBlock* b);

    SgBasicBlock* transformNonLocalControlFlow (SgBasicBlock* b_orig);

    void gatherNonLocalDecls (SgBasicBlock* b);

  } /* namespace Preprocess */
} /* namespace Outliner */

#endif

// eof