$ cat gprel.cc 
class __attribute__ ((visibility("default"))) Type 
{ 
 private: 
  static long _staticTypeCount; 
 public: 
  Type() { _staticTypeCount++; } 
  ~Type(); 
}; 
 
long Type::_staticTypeCount = 0; 
 
Type::~Type() 
{ 
 _staticTypeCount--; 
} 
$ gcc -fPIC -fvisibility=hidden -S gprel.cc 
$ grep _staticTypeCount gprel.s 
        .global _ZN4Type16_staticTypeCountE# 
        .type   _ZN4Type16_staticTypeCountE#, @object 
        .size   _ZN4Type16_staticTypeCountE#, 8 
_ZN4Type16_staticTypeCountE: 
        addl r14 = @gprel(_ZN4Type16_staticTypeCountE#), gp 
        addl r14 = @gprel(_ZN4Type16_staticTypeCountE#), gp 
        addl r14 = @gprel(_ZN4Type16_staticTypeCountE#), gp 
        addl r14 = @gprel(_ZN4Type16_staticTypeCountE#), gp

-- 
           Summary: Invalid gprel relocation in PIC
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: schwab at suse dot de
                CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: ia64-*-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18925

Reply via email to