Changes in directory llvm/include/llvm:
GlobalValue.h updated: 1.40 -> 1.41 --- Log message: Implement protected visibility. This partly implements PR1363: http://llvm.org/PR1363 . Linker should be taught to deal with protected symbols. --- Diffs of the changes: (+6 -2) GlobalValue.h | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) Index: llvm/include/llvm/GlobalValue.h diff -u llvm/include/llvm/GlobalValue.h:1.40 llvm/include/llvm/GlobalValue.h:1.41 --- llvm/include/llvm/GlobalValue.h:1.40 Sat Apr 28 08:44:59 2007 +++ llvm/include/llvm/GlobalValue.h Sun Apr 29 13:35:00 2007 @@ -43,7 +43,8 @@ /// @brief An enumeration for the kinds of visibility of global values. enum VisibilityTypes { DefaultVisibility = 0, ///< The GV is visible - HiddenVisibility ///< The GV is hidden + HiddenVisibility, ///< The GV is hidden + ProtectedVisibility ///< The GV is protected }; protected: @@ -58,7 +59,7 @@ // Note: VC++ treats enums as signed, so an extra bit is required to prevent // Linkage and Visibility from turning into negative values. LinkageTypes Linkage : 5; // The linkage of this global - unsigned Visibility : 1; // The visibility style of this global + unsigned Visibility : 2; // The visibility style of this global unsigned Alignment : 16; // Alignment of this symbol, must be power of two std::string Section; // Section to emit this into, empty mean default public: @@ -74,6 +75,9 @@ VisibilityTypes getVisibility() const { return (VisibilityTypes)Visibility; } bool hasHiddenVisibility() const { return Visibility == HiddenVisibility; } + bool hasProtectedVisibility() const { + return Visibility == ProtectedVisibility; + } void setVisibility(VisibilityTypes V) { Visibility = V; } bool hasSection() const { return !Section.empty(); } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits