31004e6
From cf81cc89f1aa6d5b00e9ddd06e47836ff8e4e377 Mon Sep 17 00:00:00 2001
a5bd9f6
From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
a5bd9f6
Date: Sat, 2 Mar 2013 15:31:17 +0100
f74b50e
Subject: [PATCH 184/482] 	* grub-core/lib/ia64/longjmp.S: Fix the name
a5bd9f6
 of longjmp function. 	* grub-core/lib/ia64/setjmp.S: Fix the name of setjmp
a5bd9f6
 function.
a5bd9f6
a5bd9f6
---
a5bd9f6
 ChangeLog                    |  5 +++++
a5bd9f6
 grub-core/lib/ia64/longjmp.S | 10 +++++-----
a5bd9f6
 grub-core/lib/ia64/setjmp.S  |  8 ++++----
a5bd9f6
 include/grub/ia64/setjmp.h   |  2 +-
a5bd9f6
 4 files changed, 15 insertions(+), 10 deletions(-)
a5bd9f6
a5bd9f6
diff --git a/ChangeLog b/ChangeLog
a5bd9f6
index 07318d8..d55dd8f 100644
a5bd9f6
--- a/ChangeLog
a5bd9f6
+++ b/ChangeLog
a5bd9f6
@@ -1,5 +1,10 @@
a5bd9f6
 2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
a5bd9f6
 
a5bd9f6
+	* grub-core/lib/ia64/longjmp.S: Fix the name of longjmp function.
a5bd9f6
+	* grub-core/lib/ia64/setjmp.S: Fix the name of setjmp function.
a5bd9f6
+
a5bd9f6
+2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
a5bd9f6
+
a5bd9f6
 	* grub-core/script/execute.c (gettext_append): Remove nested functions.
a5bd9f6
 
a5bd9f6
 2013-03-02  Vladimir Serbinenko  <phcoder@gmail.com>
a5bd9f6
diff --git a/grub-core/lib/ia64/longjmp.S b/grub-core/lib/ia64/longjmp.S
a5bd9f6
index 729bdc7..38afb22 100644
a5bd9f6
--- a/grub-core/lib/ia64/longjmp.S
a5bd9f6
+++ b/grub-core/lib/ia64/longjmp.S
a5bd9f6
@@ -40,10 +40,10 @@
a5bd9f6
 
a5bd9f6
 	/* __longjmp(__jmp_buf buf, int val) */
a5bd9f6
 
a5bd9f6
-	.text 
a5bd9f6
-	.global longjmp
a5bd9f6
-	.proc longjmp
a5bd9f6
-longjmp:
a5bd9f6
+	.text
a5bd9f6
+
a5bd9f6
+	.proc EXT_C(grub_longjmp)
a5bd9f6
+FUNCTION(grub_longjmp)
a5bd9f6
 	alloc r8=ar.pfs,2,1,0,0
a5bd9f6
 	mov r27=ar.rsc
a5bd9f6
 	add r2=0x98,in0		// r2 <- &jmpbuf.orig_jmp_buf_addr
a5bd9f6
@@ -159,4 +159,4 @@ longjmp:
a5bd9f6
 	invala			// virt. -> phys. regnum mapping may change
a5bd9f6
 	mov pr=r24,-1
a5bd9f6
 	br.ret.dptk.few rp
a5bd9f6
-	.endp longjmp
a5bd9f6
+	.endp EXT_C(grub_longjmp)
a5bd9f6
diff --git a/grub-core/lib/ia64/setjmp.S b/grub-core/lib/ia64/setjmp.S
a5bd9f6
index dc19be0..a0382d8 100644
a5bd9f6
--- a/grub-core/lib/ia64/setjmp.S
a5bd9f6
+++ b/grub-core/lib/ia64/setjmp.S
a5bd9f6
@@ -74,13 +74,13 @@ GRUB_MOD_LICENSE "GPLv2+"
a5bd9f6
 	/* The following two entry points are the traditional entry points: */
a5bd9f6
 
a5bd9f6
 	.text
a5bd9f6
-	.global setjmp
a5bd9f6
-	.proc setjmp
a5bd9f6
-setjmp:
a5bd9f6
+	
a5bd9f6
+	.proc EXT_C(grub_setjmp)
a5bd9f6
+FUNCTION(grub_setjmp)
a5bd9f6
 	alloc r8=ar.pfs,2,0,0,0
a5bd9f6
 	mov in1=1
a5bd9f6
 	br.cond.sptk.many __sigsetjmp
a5bd9f6
-	.endp setjmp
a5bd9f6
+	.endp EXT_C(grub_setjmp)
a5bd9f6
 
a5bd9f6
 	/* __sigsetjmp(__jmp_buf buf, int savemask) */
a5bd9f6
 
a5bd9f6
diff --git a/include/grub/ia64/setjmp.h b/include/grub/ia64/setjmp.h
a5bd9f6
index a71c9c5..6e9bc8b 100644
a5bd9f6
--- a/include/grub/ia64/setjmp.h
a5bd9f6
+++ b/include/grub/ia64/setjmp.h
a5bd9f6
@@ -24,5 +24,5 @@
a5bd9f6
 /* the __jmp_buf element type should be __float80 per ABI... */
a5bd9f6
 typedef long grub_jmp_buf[_JBLEN] __attribute__ ((aligned (16))); /* guarantees 128-bit alignment! */
a5bd9f6
 
a5bd9f6
-int grub_setjmp (grub_jmp_buf env);
a5bd9f6
+int grub_setjmp (grub_jmp_buf env) __attribute__ ((returns_twice));
a5bd9f6
 void grub_longjmp (grub_jmp_buf env, int val) __attribute__ ((noreturn));
a5bd9f6
-- 
31004e6
1.8.2.1
a5bd9f6