Deleted Added
full compact
LiveVariables.h (208954) LiveVariables.h (212904)
1//===- LiveVariables.h - Live Variable Analysis for Source CFGs -*- C++ --*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//

--- 27 unchanged lines hidden (view full) ---

36 // (so that we don't explore such expressions twice). We also want
37 // to compute liveness information for block-level expressions, since these
38 // act as "temporary" values.
39
40 struct AnalysisDataTy : public StmtDeclBitVector_Types::AnalysisDataTy {
41 ObserverTy* Observer;
42 ValTy AlwaysLive;
43 AnalysisContext *AC;
1//===- LiveVariables.h - Live Variable Analysis for Source CFGs -*- C++ --*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//

--- 27 unchanged lines hidden (view full) ---

36 // (so that we don't explore such expressions twice). We also want
37 // to compute liveness information for block-level expressions, since these
38 // act as "temporary" values.
39
40 struct AnalysisDataTy : public StmtDeclBitVector_Types::AnalysisDataTy {
41 ObserverTy* Observer;
42 ValTy AlwaysLive;
43 AnalysisContext *AC;
44 bool killAtAssign;
44
45
45 AnalysisDataTy() : Observer(NULL), AC(NULL) {}
46 AnalysisDataTy() : Observer(NULL), AC(NULL), killAtAssign(true) {}
46 };
47
48 //===-----------------------------------------------------===//
49 // ObserverTy - Observer for uninitialized values queries.
50 //===-----------------------------------------------------===//
51
52 struct ObserverTy {
53 virtual ~ObserverTy() {}

--- 9 unchanged lines hidden (view full) ---

63
64class LiveVariables : public DataflowValues<LiveVariables_ValueTypes,
65 dataflow::backward_analysis_tag> {
66
67
68public:
69 typedef LiveVariables_ValueTypes::ObserverTy ObserverTy;
70
47 };
48
49 //===-----------------------------------------------------===//
50 // ObserverTy - Observer for uninitialized values queries.
51 //===-----------------------------------------------------===//
52
53 struct ObserverTy {
54 virtual ~ObserverTy() {}

--- 9 unchanged lines hidden (view full) ---

64
65class LiveVariables : public DataflowValues<LiveVariables_ValueTypes,
66 dataflow::backward_analysis_tag> {
67
68
69public:
70 typedef LiveVariables_ValueTypes::ObserverTy ObserverTy;
71
71 LiveVariables(AnalysisContext &AC);
72 LiveVariables(AnalysisContext &AC, bool killAtAssign = true);
72
73 /// IsLive - Return true if a variable is live at the end of a
74 /// specified block.
75 bool isLive(const CFGBlock* B, const VarDecl* D) const;
76
77 /// IsLive - Returns true if a variable is live at the beginning of the
78 /// the statement. This query only works if liveness information
79 /// has been recorded at the statement level (see runOnAllBlocks), and

--- 42 unchanged lines hidden ---
73
74 /// IsLive - Return true if a variable is live at the end of a
75 /// specified block.
76 bool isLive(const CFGBlock* B, const VarDecl* D) const;
77
78 /// IsLive - Returns true if a variable is live at the beginning of the
79 /// the statement. This query only works if liveness information
80 /// has been recorded at the statement level (see runOnAllBlocks), and

--- 42 unchanged lines hidden ---