/usr/lib/llvm-3.4/include/polly/ScopLib.h is in libclang-common-3.4-dev 1:3.4.2-13.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | //===- ScopLib.h - ScopLib interface ----------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// Scoplib interface.
//
// The scoplib interface allows to import/export a scop using scoplib.
//===----------------------------------------------------------------------===//
#ifndef POLLY_SCOPLIB_H
#define POLLY_SCOPLIB_H
#define SCOPLIB_INT_T_IS_MP
#include "isl/ctx.h"
#include "scoplib/scop.h"
#include <map>
namespace llvm {
class Value;
}
struct isl_constraint;
struct isl_basic_map;
struct isl_basic_set;
struct isl_map;
struct isl_set;
namespace polly {
class Dependences;
class ScopStmt;
class Scop;
class ScopLib {
Scop *PollyScop;
scoplib_scop_p scoplib;
Dependences *D;
std::map<const llvm::Value *, int> ArrayMap;
void initializeArrays();
void initializeParameters();
void initializeScattering();
void initializeStatements();
scoplib_statement_p initializeStatement(ScopStmt *stmt);
void freeStatement(scoplib_statement_p stmt);
static int accessToMatrix_constraint(isl_constraint *c, void *user);
static int accessToMatrix_basic_map(isl_basic_map *bmap, void *user);
scoplib_matrix_p createAccessMatrix(ScopStmt *S, bool isRead);
static int domainToMatrix_constraint(isl_constraint *c, void *user);
static int domainToMatrix_basic_set(isl_basic_set *bset, void *user);
scoplib_matrix_p domainToMatrix(__isl_take isl_set *set);
static int scatteringToMatrix_constraint(isl_constraint *c, void *user);
static int scatteringToMatrix_basic_map(isl_basic_map *bmap, void *user);
scoplib_matrix_p scatteringToMatrix(__isl_take isl_map *map);
public:
ScopLib(Scop *S);
ScopLib(Scop *S, FILE *F, Dependences *D);
~ScopLib();
void print(FILE *F);
bool updateScattering();
};
}
#endif /* POLLY_SCOPLIB_H */
|