8sa1-gcc/gcc/config/m68k
Geoff Keating a157febd0c c-common.c (enum attrs): Add A_NO_LIMIT_STACK.
* c-common.c (enum attrs): Add A_NO_LIMIT_STACK.
(init_attributes): Add A_NO_LIMIT_STACK.
(decl_attributes): Handle A_NO_LIMIT_STACK.
* c-decl.c (duplicate_decls): Handle DECL_NO_LIMIT_STACK.
* explow.c (allocate_dynamic_stack_space) [!HAVE_allocate_stack]:
Handle stack bounds checking.
* flags.h (flag_stack_check): Use the word 'probe' rather than
'check', because the flag doesn't actually cause any checking to
be done.
* function.c (expand_function_start): Set
current_function_limit_stack.
* function.h (struct function): Add limit_stack.
(current_function_limit_stack): Define.
* invoke.texi (Code Gen Options): Document new options.
* rtl.h: Declare stack_limit_rtx.
* toplev.c (stack_limit_rtx): New variable.
(decode_f_option): Handle new options -fstack-limit-register=REG,
-fstack-limit-symbol=IDENT, -fno-stack-limit.
(main): Add stack_limit_rtx as GC root.
* tree.h (DECL_NO_LIMIT_STACK): New macro.
(struct tree_decl): New member no_limit_stack.

* config/rs6000/rs6000.c (rs6000_allocate_stack_space): Handle
stack_limit_rtx.
* config/rs6000/rs6000.md (allocate_stack): Handle stack_limit_rtx.
(conditional_trap+1): Get new mnemonic correct.
(conditional_trap+2): New pattern for DImode traps.

* config/m68k/m68k.c (output_function_prologue): Handle
stack_limit_rtx.
* config/m68k/m68k.md (trap): New insn.
(conditional_trap): New insn.
* md.texi (Standard Names): Document `trap' and
`conditional_trap'.
* optabs.c (gen_cond_trap): Use start_sequence()/end_sequence()
so a cc0 setter doesn't get emitted at some random place in the
function.

* config/i960/i960.md (trap): New insn.
(conditional_trap): New expander.
(conditional_trap+1, conditional_trap+2): New insns for signed
and unsigned cases.
* config/i960/i960.c (i960_function_prologue): Use
STARTING_FRAME_OFFSET.  Handle stack_limit_rtx.

Co-Authored-By: Greg McGary <gkm@gnu.org>

From-SVN: r30771
1999-12-04 03:00:04 +00:00
..
3b1.h gbl-ctors.h: Lose HAVE_ATEXIT. 1999-09-15 17:41:16 -04:00
3b1g.h
a-ux.h gbl-ctors.h: Lose HAVE_ATEXIT. 1999-09-15 17:41:16 -04:00
altos3068.h Include function.h in most files. 1999-08-09 14:00:21 +00:00
amix.h
apollo68.h gbl-ctors.h: Lose HAVE_ATEXIT. 1999-09-15 17:41:16 -04:00
atari.h
aux-crt1.c
aux-crt2.asm
aux-crtn.asm
aux-exit.c
aux-low.gld
aux-mcount.c
auxas.h
auxgas.h
auxgld.h
auxld.h
ccur-GAS.h
coff.h
crds.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
crti.s configure.in (m68k-*-rtemscoff*): Added. 1999-09-14 03:52:09 -06:00
crtn.s configure.in (m68k-*-rtemscoff*): Added. 1999-09-14 03:52:09 -06:00
ctix.h
dpx2.h gbl-ctors.h: Lose HAVE_ATEXIT. 1999-09-15 17:41:16 -04:00
dpx2.ifile
dpx2cdbx.h
dpx2g.h
fpgnulib.c
hp2bsd.h
hp3bsd44.h
hp3bsd.h
hp310.h
hp310g.h
hp320.h gbl-ctors.h: Lose HAVE_ATEXIT. 1999-09-15 17:41:16 -04:00
hp320g.h
hpux7.h
isi-nfp.h
isi.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
lb1sf68.asm
linux-aout.h
linux.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
lynx-ng.h
lynx.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
m68k-aout.h
m68k-coff.h m68kelf.h: Set USE_GAS... 1999-09-03 17:10:48 +00:00
m68k-none.h
m68k-psos.h
m68k.c c-common.c (enum attrs): Add A_NO_LIMIT_STACK. 1999-12-04 03:00:04 +00:00
m68k.h m68kelf.h: Suppress '/* within comment' warning. 1999-11-19 00:23:01 +00:00
m68k.md c-common.c (enum attrs): Add A_NO_LIMIT_STACK. 1999-12-04 03:00:04 +00:00
m68kelf.h m68kelf.h: Suppress '/* within comment' warning. 1999-11-19 00:23:01 +00:00
m68kemb.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
m68kv4.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
m68020-elf.h
mot3300-crt0.S
mot3300.h gbl-ctors.h: Lose HAVE_ATEXIT. 1999-09-15 17:41:16 -04:00
mot3300Mcrt0.S
netbsd.h
news3.h
news3gas.h
news.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
newsgas.h
next21.h
next.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
openbsd.h
pbb.h Include function.h in most files. 1999-08-09 14:00:21 +00:00
plexus.h
rtems.h
rtemself.h configure.in (m68k-*-rtemscoff*): Added. 1999-09-14 03:52:09 -06:00
sgs.h
sun2.h
sun2o4.h
sun3.h Merge in gcc2-ss-010999 1999-09-06 23:49:18 -06:00
sun3mach.h
sun3n3.h
sun3n.h
sun3o3.h
t-aux
t-crtstuff configure.in (m68k-*-rtemscoff*): Added. 1999-09-14 03:52:09 -06:00
t-linux
t-linux-aout
t-lynx
t-m68kbare
t-m68kelf
t-mot3300
t-mot3300-gald
t-mot3300-gas
t-mot3300-gld
t-next
t-vxworks68
tower-as.h Include function.h in most files. 1999-08-09 14:00:21 +00:00
tower.h
vxm68k.h
x-alloca-c
x-amix
x-apollo68 Makefile.in (TAROUTOPTS): Kill. 1999-08-07 01:39:28 -06:00
x-ccur
x-crds
x-dpx2
x-hp2bsd
x-hp320 Makefile.in (TAROUTOPTS): Kill. 1999-08-07 01:39:28 -06:00
x-hp320g Makefile.in (TAROUTOPTS): Kill. 1999-08-07 01:39:28 -06:00
x-mot3300 x-mot3300 (XCFLAGS): List of big files now includes `cse.o'. 1999-07-12 17:49:33 -06:00
x-mot3300-gas
x-next
x-tower
xm-3b1.h
xm-altos3068.h
xm-amix.h
xm-atari.h
xm-aux.h
xm-crds.h
xm-hp320.h
xm-linux.h
xm-lynx.h
xm-m68k.h
xm-m68kv.h
xm-mot3300.h
xm-next.h
xm-openbsd.h
xm-plexus.h
xm-sun3.h
xm-tower.h