[PGO] Compiler-rt cleanup -- introduces macros for various macros

This makes code more readable and be made more portable in the future.
There is no functional change.

llvm-svn: 253845
diff --git a/compiler-rt/lib/profile/InstrProfilingWriter.c b/compiler-rt/lib/profile/InstrProfilingWriter.c
index e1aecec..ec3bd16 100644
--- a/compiler-rt/lib/profile/InstrProfilingWriter.c
+++ b/compiler-rt/lib/profile/InstrProfilingWriter.c
@@ -10,9 +10,10 @@
 #include "InstrProfiling.h"
 #include "InstrProfilingInternal.h"
 
-__attribute__((visibility("hidden"))) int
-llvmWriteProfData(WriterCallback Writer, void *WriterCtx,
-                  const uint8_t *ValueDataBegin, const uint64_t ValueDataSize) {
+LLVM_LIBRARY_VISIBILITY int llvmWriteProfData(WriterCallback Writer,
+                                              void *WriterCtx,
+                                              const uint8_t *ValueDataBegin,
+                                              const uint64_t ValueDataSize) {
   /* Match logic in __llvm_profile_write_buffer(). */
   const __llvm_profile_data *DataBegin = __llvm_profile_begin_data();
   const __llvm_profile_data *DataEnd = __llvm_profile_end_data();
@@ -25,7 +26,7 @@
                                ValueDataSize, NamesBegin, NamesEnd);
 }
 
-__attribute__((visibility("hidden"))) int llvmWriteProfDataImpl(
+LLVM_LIBRARY_VISIBILITY int llvmWriteProfDataImpl(
     WriterCallback Writer, void *WriterCtx,
     const __llvm_profile_data *DataBegin, const __llvm_profile_data *DataEnd,
     const uint64_t *CountersBegin, const uint64_t *CountersEnd,