diff options
| author | Chandler Carruth <chandlerc@gmail.com> | 2014-04-22 02:55:47 +0000 |
|---|---|---|
| committer | Chandler Carruth <chandlerc@gmail.com> | 2014-04-22 02:55:47 +0000 |
| commit | 964daaaf192f76eccb4eb9fed849133c91b96bc5 (patch) | |
| tree | a6eafb0b9f568ca3c579b1a8c6ba74f0c8860c05 /llvm/lib/Transforms/InstCombine/InstCombine.h | |
| parent | f1221bd01bbf77a5ad24e30dcf126a4865941c50 (diff) | |
| download | bcm5719-llvm-964daaaf192f76eccb4eb9fed849133c91b96bc5.tar.gz bcm5719-llvm-964daaaf192f76eccb4eb9fed849133c91b96bc5.zip | |
[Modules] Fix potential ODR violations by sinking the DEBUG_TYPE
definition below all of the header #include lines, lib/Transforms/...
edition.
This one is tricky for two reasons. We again have a couple of passes
that define something else before the includes as well. I've sunk their
name macros with the DEBUG_TYPE.
Also, InstCombine contains headers that need DEBUG_TYPE, so now those
headers #define and #undef DEBUG_TYPE around their code, leaving them
well formed modular headers. Fixing these headers was a large motivation
for all of these changes, as "leaky" macros of this form are hard on the
modules implementation.
llvm-svn: 206844
Diffstat (limited to 'llvm/lib/Transforms/InstCombine/InstCombine.h')
| -rw-r--r-- | llvm/lib/Transforms/InstCombine/InstCombine.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombine.h b/llvm/lib/Transforms/InstCombine/InstCombine.h index 4ee2f59c174..1a9dcdd3760 100644 --- a/llvm/lib/Transforms/InstCombine/InstCombine.h +++ b/llvm/lib/Transforms/InstCombine/InstCombine.h @@ -20,6 +20,8 @@ #include "llvm/Pass.h" #include "llvm/Transforms/Utils/SimplifyLibCalls.h" +#define DEBUG_TYPE "instcombine" + namespace llvm { class CallSite; class DataLayout; @@ -394,8 +396,8 @@ private: Value *Descale(Value *Val, APInt Scale, bool &NoSignedWrap); }; - - } // end namespace llvm. +#undef DEBUG_TYPE + #endif |

