This file is indexed.

/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 */