]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[i386] Rename __cdecl to __asmcall
authorMichael Brown <mcb30@etherboot.org>
Wed, 19 Nov 2008 00:18:32 +0000 (16:18 -0800)
committerMichael Brown <mcb30@etherboot.org>
Wed, 19 Nov 2008 19:12:53 +0000 (19:12 +0000)
__cdecl is a misleading name, since it currently encapsulates both
cdecl and regparm(0) attributes.  Rename to __asmcall.

14 files changed:
src/arch/i386/Makefile
src/arch/i386/core/dumpregs.c
src/arch/i386/core/gdbmach.c
src/arch/i386/core/relocate.c
src/arch/i386/include/bits/compiler.h [new file with mode: 0644]
src/arch/i386/include/pxe_call.h
src/arch/i386/include/setjmp.h
src/arch/i386/interface/pcbios/int13.c
src/arch/i386/interface/pxe/pxe_call.c
src/arch/i386/interface/syslinux/com32_call.c
src/arch/i386/interface/syslinux/comboot_call.c
src/core/main.c
src/include/compiler.h
src/include/stdlib.h

index 7d3e763995d144202dd22a7b82cb2c2b1aea11ba..e376b4811f381505188f1c542ebb6dcd89cc8870 100644 (file)
@@ -22,11 +22,11 @@ endif
 CFLAGS         += -mpreferred-stack-boundary=2
 
 # Code size reduction.  Use regparm for all functions - C functions
-# called from assembly (or vice versa) need __cdecl now
+# called from assembly (or vice versa) need __asmcall now
 #
 CFLAGS         += -mregparm=3
 
-# Code size reduction.  Use -mrtd (same __cdecl requirements as above)
+# Code size reduction.  Use -mrtd (same __asmcall requirements as above)
 CFLAGS         += -mrtd
 
 # Code size reduction.  This is the logical complement to -mregparm=3.
index 89426d5831ea95b008561c4ff9b8fa66ec76aa01..a2777a0b9ba7a3f512603dae1044d2777687d1f3 100644 (file)
@@ -1,7 +1,7 @@
 #include <stdio.h>
 #include <realmode.h>
 
-void __cdecl _dump_regs ( struct i386_all_regs *ix86 ) {
+void __asmcall _dump_regs ( struct i386_all_regs *ix86 ) {
 
        __asm__ __volatile__ (
                TEXT16_CODE ( ".globl dump_regs\n\t"
index d07663c4180c6a46fbc11f22dde63c2bfdf91969..97827ecbc49bc48bd5b92ffc3e4ce91707a798bd 100644 (file)
@@ -142,7 +142,7 @@ static void gdbmach_enable_hwbps ( void ) {
        __asm__ __volatile__ ( "movl %0, %%dr7\n" : : "r" ( dr7 ) );
 }
 
-__cdecl void gdbmach_handler ( int signo, gdbreg_t *regs ) {
+__asmcall void gdbmach_handler ( int signo, gdbreg_t *regs ) {
        gdbmach_disable_hwbps();
        gdbstub_handler ( signo, regs );
        gdbmach_enable_hwbps();
index fd8df087faa90237f85ee6b039a248f59c8392f2..bdc8498ed2cae8c15b8cef35743a9ee9b75efe54 100644 (file)
@@ -39,7 +39,7 @@ extern char _etextdata[];
  * address space, and returns the physical address of the new location
  * to the prefix in %edi.
  */
-__cdecl void relocate ( struct i386_all_regs *ix86 ) {
+__asmcall void relocate ( struct i386_all_regs *ix86 ) {
        struct memory_map memmap;
        unsigned long start, end, size, padded_size;
        unsigned long new_start, new_end;
diff --git a/src/arch/i386/include/bits/compiler.h b/src/arch/i386/include/bits/compiler.h
new file mode 100644 (file)
index 0000000..af79606
--- /dev/null
@@ -0,0 +1,11 @@
+#ifndef _BITS_COMPILER_H
+#define _BITS_COMPILER_H
+
+#ifndef ASSEMBLY
+
+/** Declare a function with standard calling conventions */
+#define __asmcall __attribute__ (( cdecl, regparm(0) ))
+
+#endif /* ASSEMBLY */
+
+#endif /* _BITS_COMPILER_H */
index 7a38d314e5ad73248422b15207fecdd2baf9e092..2f3ea15aba41048dff3d5109b8d95adb4177c348 100644 (file)
@@ -30,6 +30,6 @@ extern void pxe_hook_int1a ( void );
 extern int pxe_unhook_int1a ( void );
 extern void pxe_init_structures ( void );
 extern int pxe_start_nbp ( void );
-extern __cdecl void pxe_api_call ( struct i386_all_regs *ix86 );
+extern __asmcall void pxe_api_call ( struct i386_all_regs *ix86 );
 
 #endif /* _PXE_CALL_H */
index bb0a100d8622d050c529d5a081ea464c5dbcb938..60e4b1209d2b28102dfa27f8a905dfef0401b9ed 100644 (file)
@@ -6,7 +6,7 @@
 #define JBLEN 6
 typedef unsigned long jmp_buf[JBLEN];
 
-extern int __cdecl setjmp (jmp_buf env);
-extern void __cdecl longjmp (jmp_buf env, int val);
+extern int __asmcall setjmp (jmp_buf env);
+extern void __asmcall longjmp (jmp_buf env, int val);
 
 #endif /* ETHERBOOT_SETJMP_H */
index 6f61e4a1c4be5c8a79a9febe8aac091a7043c8ec..a18039e03d0ad29abc435d2a7f97639a4a010bc3 100644 (file)
@@ -322,7 +322,7 @@ static int int13_get_extended_parameters ( struct int13_drive *drive,
  * INT 13 handler
  *
  */
-static __cdecl void int13 ( struct i386_all_regs *ix86 ) {
+static __asmcall void int13 ( struct i386_all_regs *ix86 ) {
        int command = ix86->regs.ah;
        unsigned int bios_drive = ix86->regs.dl;
        struct int13_drive *drive;
index 7122c4eb8d317e8fb9bf96578196dee16c5d40d8..04aaf3b20d850c1521939b7181393c34617cfc57 100644 (file)
@@ -119,7 +119,7 @@ static PXENV_EXIT_t pxenv_unknown ( struct s_PXENV_UNKNOWN *pxenv_unknown ) {
  * @v es:di            Address of PXE parameter block
  * @ret ax             PXE exit code
  */
-__cdecl void pxe_api_call ( struct i386_all_regs *ix86 ) {
+__asmcall void pxe_api_call ( struct i386_all_regs *ix86 ) {
        int opcode = ix86->regs.bx;
        userptr_t parameters = real_to_user ( ix86->segs.es, ix86->regs.di );
        size_t param_len;
@@ -339,7 +339,7 @@ __cdecl void pxe_api_call ( struct i386_all_regs *ix86 ) {
  * @v es:di            Address of PXE parameter block
  * @ret ax             PXE exit code
  */
-__cdecl void pxe_loader_call ( struct i386_all_regs *ix86 ) {
+__asmcall void pxe_loader_call ( struct i386_all_regs *ix86 ) {
        userptr_t uparams = real_to_user ( ix86->segs.es, ix86->regs.di );
        struct s_UNDI_LOADER params;
        PXENV_EXIT_t ret;
index 586730cf09ad19516390dcc9600922ca6cfb90d7..4a782dce638fea0ad133b700193bd429e8f46c23 100644 (file)
@@ -41,7 +41,7 @@ uint16_t __bss16 ( com32_saved_sp );
 /**
  * Interrupt call helper
  */
-void __cdecl com32_intcall ( uint8_t interrupt, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
+void __asmcall com32_intcall ( uint8_t interrupt, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
 
        memcpy_user ( virt_to_user( &com32_regs ), 0,
                      phys_to_user ( inregs_phys ), 0,
@@ -111,7 +111,7 @@ void __cdecl com32_intcall ( uint8_t interrupt, physaddr_t inregs_phys, physaddr
 /**
  * Farcall helper
  */
-void __cdecl com32_farcall ( uint32_t proc, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
+void __asmcall com32_farcall ( uint32_t proc, physaddr_t inregs_phys, physaddr_t outregs_phys ) {
 
        memcpy_user ( virt_to_user( &com32_regs ), 0,
                      phys_to_user ( inregs_phys ), 0,
@@ -170,7 +170,7 @@ void __cdecl com32_farcall ( uint32_t proc, physaddr_t inregs_phys, physaddr_t o
 /**
  * CDECL farcall helper
  */
-int __cdecl com32_cfarcall ( uint32_t proc, physaddr_t stack, size_t stacksz ) {
+int __asmcall com32_cfarcall ( uint32_t proc, physaddr_t stack, size_t stacksz ) {
        int32_t eax;
 
        copy_user_to_rm_stack ( phys_to_user ( stack ), stacksz );
index 5a400ede55ea582735f80c4ad97d91c79efa87ea..977d44f3d1b8e416f6dec3b5551dcca5151129ab 100644 (file)
@@ -212,7 +212,7 @@ void comboot_run_kernel ( )
 /**
  * Terminate program interrupt handler
  */
-static __cdecl void int20 ( struct i386_all_regs *ix86 __unused ) {
+static __asmcall void int20 ( struct i386_all_regs *ix86 __unused ) {
        longjmp ( comboot_return, COMBOOT_RETURN_EXIT );
 }
 
@@ -220,7 +220,7 @@ static __cdecl void int20 ( struct i386_all_regs *ix86 __unused ) {
 /**
  * DOS-compatible API
  */
-static __cdecl void int21 ( struct i386_all_regs *ix86 ) {
+static __asmcall void int21 ( struct i386_all_regs *ix86 ) {
        ix86->flags |= CF;
 
        switch ( ix86->regs.ah ) {
@@ -287,7 +287,7 @@ static __cdecl void int21 ( struct i386_all_regs *ix86 ) {
 /**
  * SYSLINUX API
  */
-static __cdecl void int22 ( struct i386_all_regs *ix86 ) {
+static __asmcall void int22 ( struct i386_all_regs *ix86 ) {
        ix86->flags |= CF;
 
        switch ( ix86->regs.ax ) {
index aaf8111b4d3b5626d0b081420ca6cad60769450f..120f87f8bc2fc8b010988e7470a4ea1936807110 100644 (file)
@@ -34,7 +34,7 @@ static struct feature features_end[0] __table_end ( struct feature, features );
  *
  * @ret rc             Return status code
  */
-__cdecl int main ( void ) {
+__asmcall int main ( void ) {
        struct feature *feature;
 
        initialise();
index b6a6f8e2c8290312f6582ee57d426f7067243002..4140a35634a5768897de6e06ff9411a8937f8f40 100644 (file)
@@ -302,9 +302,6 @@ int __debug_disable;
 /** Declare a variable or data structure as unused. */
 #define __unused __attribute__ (( unused ))
 
-/** Apply standard C calling conventions */
-#define __cdecl __attribute__ (( cdecl , regparm(0) ))
-
 /**
  * Declare a function as pure - i.e. without side effects
  */
@@ -372,4 +369,6 @@ int __debug_disable;
 
 #endif /* ASSEMBLY */
 
+#include <bits/compiler.h>
+
 #endif /* COMPILER_H */
index f3dc7e4115c712286346d0f52e7b25065b758bd4..838a22acff22162969602a703287f425fcc01cf4 100644 (file)
@@ -68,6 +68,6 @@ static inline void srand ( unsigned int seed ) {
  */
 
 extern int system ( const char *command );
-extern __cdecl int main ( void );
+extern __asmcall int main ( void );
 
 #endif /* STDLIB_H */