crtbegin.asm (.fini): Use pc-relative relocs to reach .text instead of gp-relative...
authorRichard Henderson <rth@redhat.com>
Thu, 22 Feb 2001 22:57:28 +0000 (14:57 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 22 Feb 2001 22:57:28 +0000 (14:57 -0800)
        * config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
        reach .text instead of gp-relative relocs.
        * config/ia64/crtend.asm (.init): Likewise.

From-SVN: r39986

gcc/ChangeLog
gcc/config/ia64/crtbegin.asm
gcc/config/ia64/crtend.asm

index f98086131da2f7c7a2fc720b025d035c06fb1d00..3a6eabc75fadc96f9df266462734ee7d68e86810 100644 (file)
@@ -1,3 +1,9 @@
+2001-02-22  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
+       reach .text instead of gp-relative relocs.
+       * config/ia64/crtend.asm (.init): Likewise.
+
 2001-02-22  Andreas Jaeger  <aj@suse.de>
 
        * extend.texi (C++ Attributes): Fix typo.
index 1b57a99316c687345a54b4ca950b994495b24b40..1568337b290ca666eab90789e253bb0d102e5cad 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
    Contributed by Jes Sorensen, <Jes.Sorensen@cern.ch>
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -71,16 +71,16 @@ __dso_handle:
  */
 .section .fini,"ax","progbits"
        { .mlx
-         movl r2 = @gprel(__do_global_dtors_aux#)
-         ;;
+         movl r2 = @pcrel(__do_global_dtors_aux# - 16)
        }
        { .mii
-         nop.m 0
-         add r2 = r2, gp
+         mov r3 = ip
+         ;;
+         add r2 = r2, r3
          ;;
-         mov b6 = r2
        }
-       { .bbb
+       { .mib
+         mov b6 = r2
          br.call.sptk.many b0 = b6
          ;;
        }
@@ -105,6 +105,7 @@ __dso_handle:
        }
        { .mfb
          st8 [r2] = r16
+         ;;
        }
 #endif
 
index 81f90198fb61fcac3918131e13d0039d3b557010..3a097d7622fada167a42478cd5860f1e600da9dc 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
    Contributed by Jes Sorensen, <Jes.Sorensen@cern.ch>
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -41,16 +41,16 @@ __DTOR_END__:
  */
 .section .init,"ax","progbits"
        { .mlx
-         movl r2 = @gprel(__do_global_ctors_aux#)
-         ;;
+         movl r2 = @pcrel(__do_global_ctors_aux# - 16)
        }
        { .mii
-         nop.m 0
-         add r2 = r2, gp
+         mov r3 = ip
+         ;;
+         add r2 = r2, r3
          ;;
-         mov b6 = r2
        }
-       { .bbb
+       { .mib
+         mov b6 = r2
          br.call.sptk.many b0 = b6
          ;;
        }