[PATCH] [Object/ELF] Add support for setVisibility()
Davide Italiano
davide at freebsd.org
Wed Mar 11 23:32:10 PDT 2015
You're right, my bad. I updated the patch. When I was looking at this file I noticed that there's a fair amount of magic hardcoded in there. I left SVT_MASK spelled at 0x3 and I'll plan to audit it entirely and change all the hardcoded values with properly defined constants. Does this make sense to you?
http://reviews.llvm.org/D8279
Files:
include/llvm/Object/ELFTypes.h
Index: include/llvm/Object/ELFTypes.h
===================================================================
--- include/llvm/Object/ELFTypes.h
+++ include/llvm/Object/ELFTypes.h
@@ -189,7 +189,15 @@
}
/// Access to the STV_xxx flag stored in the first two bits of st_other.
+ /// STV_DEFAULT: 0
+ /// STV_INTERNAL: 1
+ /// STV_HIDDEN: 2
+ /// STV_PROTECTED: 3
unsigned char getVisibility() const { return st_other & 0x3; }
+ void setVisibility(unsigned char v) {
+ assert(v < 4 && "Invalid value for visibility");
+ st_other = (st_other & ~0x3) | v;
+ }
};
/// Elf_Versym: This is the structure of entries in the SHT_GNU_versym section
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8279.21799.patch
Type: text/x-patch
Size: 659 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150312/672bf178/attachment.bin>
More information about the llvm-commits
mailing list