Index: gcc/gcc/config/mips/sdemtk.h |
diff --git a/gcc/gcc/config/mips/sdemtk.h b/gcc/gcc/config/mips/sdemtk.h |
index 3e4e58fdd4f56072ee8adeda5be30a9d57e6aa27..a9bb85e82b6e240df6b18cc9609a09fa4ac0a3b9 100644 |
--- a/gcc/gcc/config/mips/sdemtk.h |
+++ b/gcc/gcc/config/mips/sdemtk.h |
@@ -1,6 +1,6 @@ |
/* Definitions of target machine for GNU compiler. |
MIPS SDE version, for use with the SDE C library rather than newlib. |
- Copyright (C) 2007, 2008 |
+ Copyright (C) 2007, 2008, 2009 |
Free Software Foundation, Inc. |
This file is part of GCC. |
@@ -86,14 +86,14 @@ extern void mips_sync_icache (void *beg, unsigned long len); |
#undef MIPS_ICACHE_SYNC |
#define MIPS_ICACHE_SYNC(ADDR, SIZE) \ |
emit_library_call (gen_rtx_SYMBOL_REF (Pmode, mips_cache_flush_func), \ |
- 0, VOIDmode, 2, ADDR, Pmode, \ |
+ LCT_NORMAL, VOIDmode, 2, ADDR, Pmode, \ |
SIZE, TYPE_MODE (sizetype)) |
/* This version of _mcount does not pop 2 words from the stack. */ |
#undef FUNCTION_PROFILER |
#define FUNCTION_PROFILER(FILE, LABELNO) \ |
{ \ |
- fprintf (FILE, "\t.set\tnoat\n"); \ |
+ mips_push_asm_switch (&mips_noat); \ |
/* _mcount treats $2 as the static chain register. */ \ |
if (cfun->static_chain_decl != NULL) \ |
fprintf (FILE, "\tmove\t%s,%s\n", reg_names[2], \ |
@@ -101,9 +101,9 @@ extern void mips_sync_icache (void *beg, unsigned long len); |
/* MIPS16 code passes saved $ra in $v1 instead of $at. */ \ |
fprintf (FILE, "\tmove\t%s,%s\n", \ |
reg_names[GP_REG_FIRST + (TARGET_MIPS16 ? 3 : 1)], \ |
- reg_names[GP_REG_FIRST + 31]); \ |
+ reg_names[RETURN_ADDR_REGNUM]); \ |
fprintf (FILE, "\tjal\t_mcount\n"); \ |
- fprintf (FILE, "\t.set\tat\n"); \ |
+ mips_pop_asm_switch (&mips_noat); \ |
/* _mcount treats $2 as the static chain register. */ \ |
if (cfun->static_chain_decl != NULL) \ |
fprintf (FILE, "\tmove\t%s,%s\n", reg_names[STATIC_CHAIN_REGNUM], \ |
@@ -112,4 +112,4 @@ extern void mips_sync_icache (void *beg, unsigned long len); |
/* ...nor does the call sequence preserve $31. */ |
#undef MIPS_SAVE_REG_FOR_PROFILING_P |
-#define MIPS_SAVE_REG_FOR_PROFILING_P(REGNO) ((REGNO) == GP_REG_FIRST + 31) |
+#define MIPS_SAVE_REG_FOR_PROFILING_P(REGNO) ((REGNO) == RETURN_ADDR_REGNUM) |