diff options
author | Richard Sandiford <rsandifo@redhat.com> | 2003-10-03 06:55:02 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2003-10-03 06:55:02 +0000 |
commit | 17a35133d47a6d31510940b143f3eb4f0f8f8f58 (patch) | |
tree | c275b9a9b07ff572c8c618c5fdcfcfa9fb621d59 /gcc | |
parent | 8b47fa065e2325e90d2aa4479a26344489f4494e (diff) | |
download | gcc-17a35133d47a6d31510940b143f3eb4f0f8f8f58.zip gcc-17a35133d47a6d31510940b143f3eb4f0f8f8f58.tar.gz gcc-17a35133d47a6d31510940b143f3eb4f0f8f8f58.tar.bz2 |
re PR target/12485 (MIPS -mxgot causes "bad" exception handling code.)
PR target/12485
* config/mips/mips.c (mips_load_got): GOT accesses can't trap.
From-SVN: r72066
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/mips/mips.c | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d04e8e3..3c80a52 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-10-03 Richard Sandiford <rsandifo@redhat.com> + + PR target/12485 + * config/mips/mips.c (mips_load_got): GOT accesses can't trap. + 2003-10-02 Mark Mitchell <mark@codesourcery.com> PR optimization/12180 diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 1cedc97..7ec8f68 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -1634,6 +1634,9 @@ mips_load_got (rtx base, rtx addr, int reloc) gen_rtx_PLUS (Pmode, base, mips_reloc (addr, reloc))); set_mem_alias_set (mem, mips_got_alias_set); + /* GOT references can't trap. */ + MEM_NOTRAP_P (mem) = 1; + /* If we allow a function's address to be lazily bound, its entry may change after the first call. Other entries are constant. */ if (reloc != RELOC_CALL16 && reloc != RELOC_CALL_LO) |