]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Fix problem with reg f29 being corrupted when unwinding stack.
authorJames E Wilson <wilson@specifixinc.com>
Wed, 6 Apr 2005 19:11:35 +0000 (12:11 -0700)
committerJim Wilson <wilson@gcc.gnu.org>
Wed, 6 Apr 2005 19:11:35 +0000 (12:11 -0700)
PR target/20670
* unwind-ia64.c (uw_intall_context): Add missing load of r27.

From-SVN: r97743

gcc/ChangeLog
gcc/config/ia64/unwind-ia64.c

index f5856ef2cbdc9628ae752cde1580f2f8bfd9e262..1767e2cfef8e071bc3a6b87503e844395c05f0d6 100644 (file)
@@ -1,3 +1,8 @@
+2005-04-06  James E. Wilson  <wilson@specifixinc.com>
+
+       PR target/20670
+       * unwind-ia64.c (uw_intall_context): Add missing load of r27.
+
 2005-04-04  Gabriel Dos Reis  <gdr@integrable-solutions.net>
 
        PR c++/18644
index 9142c831e7fa4d5875e0296c5c2a1269c7ab5d7a..e8e2fc059590e64e9df7189faca500881657274c 100644 (file)
@@ -2176,6 +2176,8 @@ uw_install_context (struct _Unwind_Context *current __attribute__((unused)),
        "(p6) ldf.fill f22 = [r28]              \n\t"
        "cmp.ne p7, p0 = r0, r29                \n\t"
        ";;                                     \n\t"
+       "ld8 r27 = [r20], 8                     \n\t"
+       ";;                                     \n\t"
        "ld8 r28 = [r20], 8                     \n\t"
        "(p7) ldf.fill f23 = [r29]              \n\t"
        "cmp.ne p6, p0 = r0, r22                \n\t"