This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: ARM support for Interrupt functions.



On Fri, 8 Dec 2000, Nick Clifton wrote:

> 2000-12-08  Nick Clifton  <nickc@redhat.com>
> 
> 	* extend.texi: Document ARM "interrupt" function attribute.
> 	Mention that the ARM also support the "naked" function
> 	attribute.
> 
> 	* config/arm/arm-protos.h (arm_current_func_type): Add
> 	prototype.
> 
> 	* config/arm/arm.h (EXCEPTION_LR_REGNUM): Define.
> 	(struct machine_function): Add 'func_type' field.
> 	Define bit values for 'func_type' field.
> 	(ARM_FUNC_TYPE): New macro.
> 	(IS_INTERRUPT): New macro.
> 	(IS_VOLATILE): New macro.
> 	(IS_NAKED): New macro.
> 	(IS_NESTED): New macro.
> 	(ARM_INITIAL_ELIMINATION_OFFSET): Use IS_VOLATILE.
> 
> 	* config/arm/arm.c (isr_attribute_args): New Structure.  A
[....]

Hi Nick,

This change appears to have broken my bootstrap on native
armv[3,4]l-unknown-linux-gnu, with a nice little ICE.  Reverting it allows
the build to pass this point (and most likely fail in libstdc++ again,
but I'll see in a couple of hours about that one).

-Rms


[build@feynman gcc]$ ./xgcc -B./
-B/usr/local/armv4l-unknown-linux-gnu/bin/ -isystem
/usr/local/armv4l-unknown-linux-gnu/include -O2   -DIN_GCC    -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem
./include  -fomit-frame-pointer -fPIC -g0 -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I/home/build-rpm/BUILD/gcc/gcc
-I/home/build-rpm/BUILD/gcc/gcc/. -I/home/build-rpm/BUILD/gcc/gcc/config
-I/home/build-rpm/BUILD/gcc/gcc/../include  -fexceptions -DL_eh -c
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c -o libgcc/./_eh.o
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c: In function `__sjthrow':
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c:3515: Internal compiler error in
dwarf2out_frame_debug_expr, at dwarf2out.c:1354
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
[build@feynman gcc]$ ./xgcc -v -B./
-B/usr/local/armv4l-unknown-linux-gnu/bin/ -isystem
/usr/local/armv4l-unknown-linux-gnu/include -O2   -DIN_GCC    -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem
./include  -fomit-frame-pointer -fPIC -g0 -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I/home/build-rpm/BUILD/gcc/gcc
-I/home/build-rpm/BUILD/gcc/gcc/. -I/home/build-rpm/BUILD/gcc/gcc/config
-I/home/build-rpm/BUILD/gcc/gcc/../include  -fexceptions -DL_eh -c
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c -o libgcc/./_eh.o
Reading specs from ./specs
Configured with: /home/build-rpm/BUILD/gcc/configure --enable-debug
--prefix=/usr/local --enable-shared --enable-threads=posix --without-cvs
armv3l-unknown-linux-gnu
gcc version 2.97 20001208 (experimental)
 ./cc1 -lang-c -v -I. -I. -I/home/build-rpm/BUILD/gcc/gcc
-I/home/build-rpm/BUILD/gcc/gcc/. -I/home/build-rpm/BUILD/gcc/gcc/config
-I/home/build-rpm/BUILD/gcc/gcc/../include -iprefix
./../lib/gcc-lib/armv3l-unknown-linux-gnu/2.97/ -isystem ./include
-isystem /usr/local/armv4l-unknown-linux-gnu/bin/include -D__GNUC__=2
-D__GNUC_MINOR__=97 -D__GNUC_PATCHLEVEL__=0 -Dunix -Dlinux -D__ELF__
-D__unix__ -D__linux__ -D__ELF__ -D__unix -D__linux -Asystem=unix
-Asystem=posix -Acpu=arm -Amachine=arm -D__CHAR_UNSIGNED__ -D__OPTIMIZE__
-D__STDC_HOSTED__=1 -g0 -W -Wall -Wwrite-strings -Wstrict-prototypes -W
missing-prototypes -D__ARM_ARCH_3__ -D__APCS_32__ -D__ARMEL__ -D__PIC__
-D__pic__ -D__arm__ -DIN_GCC -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -DL_eh -isystem
/usr/local/armv4l-unknown-linux-gnu/include -isystem ./include
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c -quiet -dumpbase libgcc2.c -g0 -O2
-W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -version
-fomit-frame-pointer -fPIC -fexceptions -o /tmp/ccEW3Epa.s
GNU CPP version 2.97 20001208 (experimental) (cpplib) (ARM GNU/Linux with
ELF)
ignoring nonexistent directory
"/usr/local/armv4l-unknown-linux-gnu/bin/include"
ignoring nonexistent directory
"/usr/local/armv4l-unknown-linux-gnu/include"
GNU C version 2.97 20001208
(experimental) (armv3l-unknown-linux-gnu) compiled by GNU C version 2.95.2
20000212 (release) [Rebel.com].
ignoring nonexistent directory
"../lib/gcc-lib/armv3l-unknown-linux-gnu/2.97/include"
ignoring nonexistent directory "../armv3l-unknown-linux-gnu/include"
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory
"/usr/local/lib/gcc-lib/armv3l-unknown-linux-gnu/2.97/include"
ignoring nonexistent directory
"/usr/local/armv3l-unknown-linux-gnu/include"
ignoring duplicate directory "."
ignoring duplicate directory "/home/build-rpm/BUILD/gcc/gcc/"
ignoring duplicate directory "include"
#include "..." search starts here:
#include <...> search starts here:
 .
 /home/build-rpm/BUILD/gcc/gcc
 /home/build-rpm/BUILD/gcc/gcc/config
 /home/build-rpm/BUILD/gcc/include
 include
 /usr/include
End of search list.
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c: In function `__sjthrow':
/home/build-rpm/BUILD/gcc/gcc/libgcc2.c:3515: Internal compiler error in
dwarf2out_frame_debug_expr, at dwarf2out.c:1354
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
[build@feynman gcc]$


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]