OSDN Git Service

* config/bfin/bfin-protos.h (WA_05000257, WA_05000283, WA_05000315,
authorbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 29 Oct 2008 16:37:22 +0000 (16:37 +0000)
committerbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 29 Oct 2008 16:37:22 +0000 (16:37 +0000)
commitb43b7954e03f8578e48822cd9b5753feae3ec616
treed61be8371b2ef75e91eba7b067eff08cc5f1eaf0
parent4675df53b6e9522521daba3f3e2c637a60217a57
* config/bfin/bfin-protos.h (WA_05000257, WA_05000283, WA_05000315,
ENABLE_WA_05000257, ENABLE_WA_05000283, ENABLE_WA_05000315): New.
* config/bfin/bfin.c (bfin_cpus): Add these workaround bits as
appropriate.
(must_save_p): For some workarounds, interrupts need to clobber a
P register.
(expand_prologue_reg_save, expand_epilogue_reg_restore): Save LC0
and LC1 for WA_05000257.
(expand_interrupt_handler_prologue): Add dummy read of CHIPID for
WA_05000283 and WA_05000315.
* config/bfin/bfin.md (UNSPEC_VOLATILE_DUMMY): New constant.
(movbi): Add alternative to set CC to 1; improve code for setting
CC to 0.
(dummy_load): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@141431 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/bfin/bfin-protos.h
gcc/config/bfin/bfin.c
gcc/config/bfin/bfin.md