[PGO] Introduce alignment macro for instr-prof control data(NFC)
authorXinliang David Li <davidxl@google.com>
Mon, 23 Nov 2015 18:02:59 +0000 (18:02 +0000)
committerXinliang David Li <davidxl@google.com>
Mon, 23 Nov 2015 18:02:59 +0000 (18:02 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@253893 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ProfileData/InstrProfData.inc
lib/Transforms/Instrumentation/InstrProfiling.cpp

index 0656c98fd69290955e6cf8037182ffbdf591e874..d92c1d3314bbe058009f12a551be5c202fcf168b 100644 (file)
@@ -183,7 +183,6 @@ COVMAP_FUNC_RECORD(const uint64_t, llvm::Type::getInt64Ty(Ctx), FuncHash, \
 #define INSTR_PROF_SIMPLE_CONCAT(x,y) x ## y
 #define INSTR_PROF_CONCAT(x,y) INSTR_PROF_SIMPLE_CONCAT(x,y)
 
-
 /* Magic number to detect file format and endianness.
  * Use 255 at one end, since no UTF-8 file can use that character.  Avoid 0,             
  * so that utilities, like strings, don't grab it as a string.  129 is also              
@@ -230,6 +229,9 @@ COVMAP_FUNC_RECORD(const uint64_t, llvm::Type::getInt64Ty(Ctx), FuncHash, \
 #define INSTR_PROF_VALUE_PROF_FUNC_STR \
         INSTR_PROF_QUOTE(INSTR_PROF_VALUE_PROF_FUNC)
 
+/* InstrProfile per-function control data alignment.  */
+#define INSTR_PROF_DATA_ALIGNMENT 8
+
 /* The data structure that represents a tracked value by the
  * value profiler.
  */
index 03b404c1f3b7667c0e779a5a69b4b6773566c117..a144dafdcbdfb98e252a3d2babd12a5cc7eecb9c 100644 (file)
@@ -344,7 +344,7 @@ InstrProfiling::getOrCreateRegionCounters(InstrProfIncrementInst *Inc) {
                                   getVarName(Inc, getInstrProfDataVarPrefix()));
   Data->setVisibility(NamePtr->getVisibility());
   Data->setSection(getDataSection());
-  Data->setAlignment(8);
+  Data->setAlignment(INSTR_PROF_DATA_ALIGNMENT);
   Data->setComdat(ProfileVarsComdat);
 
   PD.RegionCounters = CounterPtr;