lkml.org 
[lkml]   [2004]   [Oct]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject'C' calling convention change.

The new Red Hat Fedora release uses the following gcc version:

gcc (GCC) 3.3.3 20040412 (Red Hat Linux 3.3.3-7)

I have many assembly-language routines that need to interface with
'C' code. The new 'C' compiler is doing something different than
gcc 3.2, previously used.

I need to know what general-purpose registers need to be saved
in the called procedure. Previously, one needed to save the
index registers only (%ebx, %edi, %esi). Apparently I need to
save others with the new compiler because, although the called
procedures work, subsequent 'C' code fails in strange ways.

Please, if somebody __knows__ (really knows), let me know. I
will have to edit over 200 assembly-language files and I want
to do it only once! I don't want to just save all the registers
used because this wastes CPU cycles and the only reason for
the assembly in the first place was to save CPU cycles.

Cheers,
Dick Johnson
Penguin : Linux version 2.6.5-1.358-noreg on an i686 machine (5570.56 BogoMips).
Note 96.31% of all statistics are fiction.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:06    [W:0.048 / U:0.536 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site