Polly 20.0.0git
|
#include "polly/Support/SCEVAffinator.h"
#include "polly/Options.h"
#include "polly/ScopInfo.h"
#include "polly/Support/GICHelper.h"
#include "polly/Support/SCEVValidator.h"
#include "llvm/IR/DataLayout.h"
#include "isl/aff.h"
#include "isl/local_space.h"
#include "isl/set.h"
#include "isl/val.h"
Go to the source code of this file.
Functions | |
static cl::opt< bool > | IgnoreIntegerWrapping ("polly-ignore-integer-wrapping", cl::desc("Do not build run-time checks to proof absence of integer " "wrapping"), cl::Hidden, cl::cat(PollyCategory)) |
static isl_stat | addNumBasicSets (__isl_take isl_set *Domain, __isl_take isl_aff *Aff, void *User) |
Add the number of basic sets in Domain to User . | |
static bool | isTooComplex (PWACtx PWAC) |
Determine if PWAC is too complex to continue. | |
static SCEV::NoWrapFlags | getNoWrapFlags (const SCEV *Expr) |
Return the flag describing the possible wrapping of Expr . | |
static PWACtx | combine (PWACtx PWAC0, PWACtx PWAC1, __isl_give isl_pw_aff *(Fn)(__isl_take isl_pw_aff *, __isl_take isl_pw_aff *)) |
static __isl_give isl_pw_aff * | getWidthExpValOnDomain (unsigned Width, __isl_take isl_set *Dom) |
Variables | |
static int const | MaxDisjunctionsInPwAff = 100 |
static unsigned const | MaxSmallBitWidth = 7 |
|
static |
Add the number of basic sets in Domain
to User
.
Definition at line 43 of file SCEVAffinator.cpp.
References Domain, isl_aff_free(), isl_set_free(), isl_set_n_basic_set(), and isl_stat_ok.
Referenced by isTooComplex().
|
static |
Definition at line 68 of file SCEVAffinator.cpp.
References isl::manage().
|
static |
Return the flag describing the possible wrapping of Expr
.
Definition at line 62 of file SCEVAffinator.cpp.
Referenced by polly::SCEVAffinator::checkForWrapping().
|
static |
Definition at line 76 of file SCEVAffinator.cpp.
References Ctx, isl_pw_aff_val_on_domain(), isl_set_get_ctx(), isl_val_2exp(), and isl_val_int_from_ui().
Referenced by polly::SCEVAffinator::addModuloSemantic(), polly::SCEVAffinator::interpretAsUnsigned(), polly::SCEVAffinator::visitTruncateExpr(), and polly::SCEVAffinator::visitUDivExpr().
|
static |
Referenced by polly::SCEVAffinator::checkForWrapping().
|
static |
Determine if PWAC
is too complex to continue.
Definition at line 53 of file SCEVAffinator.cpp.
References addNumBasicSets(), isl_pw_aff_foreach_piece(), and MaxDisjunctionsInPwAff.
Referenced by polly::SCEVAffinator::visitAddExpr(), polly::SCEVAffinator::visitMulExpr(), polly::SCEVAffinator::visitSMaxExpr(), and polly::SCEVAffinator::visitSMinExpr().
|
static |
Definition at line 36 of file SCEVAffinator.cpp.
Referenced by isTooComplex().
|
static |
Definition at line 40 of file SCEVAffinator.cpp.
Referenced by polly::SCEVAffinator::computeModuloForExpr().