]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm
authorVladimir Serbinenko <phcoder@gmail.com>
Thu, 7 Nov 2013 09:30:32 +0000 (10:30 +0100)
committerVladimir Serbinenko <phcoder@gmail.com>
Thu, 7 Nov 2013 09:30:32 +0000 (10:30 +0100)
bindings.
* grub-core/lib/reed_solomon.c: Likewise.
* include/grub/i386/gdb.h: Likewise.
* include/grub/i386/pc/int.h: Likewise.
* include/grub/i386/pc/pxe.h: Likewise.
* include/grub/ieee1275/ieee1275.h: Likewise.

ChangeLog
grub-core/kern/ieee1275/cmain.c
grub-core/lib/reed_solomon.c
include/grub/i386/gdb.h
include/grub/i386/pc/int.h
include/grub/i386/pc/pxe.h
include/grub/ieee1275/ieee1275.h

index 9b11ce020c9f36056c9d3ab4845dc3b95a337445..3edb0d0a3c05eae4fe1d2520ca365ab240d8785f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm
+       bindings.
+       * grub-core/lib/reed_solomon.c: Likewise.
+       * include/grub/i386/gdb.h: Likewise.
+       * include/grub/i386/pc/int.h: Likewise.
+       * include/grub/i386/pc/pxe.h: Likewise.
+       * include/grub/ieee1275/ieee1275.h: Likewise.
+
 2013-11-07  Vladimir Serbinenko  <phcoder@gmail.com>
 
        Import libgcrypt 1.5.3.
index abd1ca96c017628437a808cb97c764ea3e9bd425..d92ae14f53e21ff1679364a79fcee91d4bc7c7f1 100644 (file)
@@ -22,7 +22,7 @@
 #include <grub/types.h>
 #include <grub/ieee1275/ieee1275.h>
 
-int (*grub_ieee1275_entry_fn) (void *);
+int (*grub_ieee1275_entry_fn) (void *) GRUB_IEEE1275_ENTRY_FN_ATTRIBUTE;
 
 grub_ieee1275_phandle_t grub_ieee1275_chosen;
 grub_ieee1275_ihandle_t grub_ieee1275_mmu;
index 51b58b8e25a53c7858c3ff7cc06b7d57fe925e72..04a27161905e1baacdc07e03b2fe2038b2331e7c 100644 (file)
@@ -53,7 +53,11 @@ typedef unsigned char grub_uint8_t;
 #include <grub/misc.h>
 #endif
 void
-grub_reed_solomon_recover (void *ptr_, grub_size_t s, grub_size_t rs);
+grub_reed_solomon_recover (void *ptr_, grub_size_t s, grub_size_t rs)
+#ifdef __i386__
+  __attribute__ ((regparm(3)))
+#endif
+  ;
 #endif
 
 #define GF_SIZE 8
index 174f4dc09ac4cae5a9a4062761b629f317b6f12c..070bb82da530a812fa395ef8de6a2db7be5d11b8 100644 (file)
@@ -71,7 +71,7 @@ struct grub_cpu_idt_descriptor
 extern void (*grub_gdb_trapvec[]) (void);
 void grub_gdb_idtinit (void);
 void grub_gdb_idtrestore (void);
-void grub_gdb_trap (int trap_no);
+void grub_gdb_trap (int trap_no) __attribute__ ((regparm(3)));
 
 #endif /* ! ASM */
 #endif /* ! GRUB_GDB_CPU_HEADER */
index 44e7f52bbb225560e41d173efe5676531194f732..fae2e877c8fb730eec492f3df6327d171404b404 100644 (file)
@@ -52,7 +52,8 @@ struct grub_bios_int_registers
 #endif
 
 void EXPORT_FUNC (grub_bios_interrupt) (grub_uint8_t intno,
-                                       struct grub_bios_int_registers *regs);
+                                       struct grub_bios_int_registers *regs)
+     __attribute__ ((regparm(3)));
 struct grub_i386_idt
 {
   grub_uint16_t limit;
index 96f65acf9a9d93cdfed47ff6b6e7c6ae8e840837..7794379ee936d10b4bb3ded15cabb798d341716c 100644 (file)
@@ -280,7 +280,7 @@ struct grub_pxenv_unload_stack
   grub_uint8_t reserved[10];
 } __attribute__ ((packed));
 
-int EXPORT_FUNC(grub_pxe_call) (int func, void * data, grub_uint32_t pxe_rm_entry);
+int EXPORT_FUNC(grub_pxe_call) (int func, void * data, grub_uint32_t pxe_rm_entry) __attribute__ ((regparm(3)));
 
 extern struct grub_pxe_bangpxe *grub_pxe_pxenv;
 
index 1b240d3df5e3ec3e8dcc0ab83de09c9dc1a8c5ed..dc54beabb4bc6f1ca5dab15c74359bed4a6dae43 100644 (file)
@@ -76,7 +76,13 @@ extern void (*EXPORT_VAR(grub_ieee1275_net_config)) (const char *dev,
 /* Maps a device alias to a pathname.  */
 extern grub_ieee1275_phandle_t EXPORT_VAR(grub_ieee1275_chosen);
 extern grub_ieee1275_ihandle_t EXPORT_VAR(grub_ieee1275_mmu);
-extern int (* EXPORT_VAR(grub_ieee1275_entry_fn)) (void *);
+#ifdef __i386__
+#define GRUB_IEEE1275_ENTRY_FN_ATTRIBUTE  __attribute__ ((regparm(3)))
+#else
+#define GRUB_IEEE1275_ENTRY_FN_ATTRIBUTE
+#endif
+
+extern int (* EXPORT_VAR(grub_ieee1275_entry_fn)) (void *) GRUB_IEEE1275_ENTRY_FN_ATTRIBUTE;
 
 /* Static heap, used only if FORCE_CLAIM is set,
    happens on Open Hack'Ware. Should be in platform-specific