diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-11 11:19:01 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-11 11:19:01 +0000 |
commit | 10c7be7ea6e54fc16864f455ffd8e57404b1a467 (patch) | |
tree | ee70b35cdded91a6e9f721e4c5cbaedad09528ad /gcc/optabs.c | |
parent | d59974987297588b3031ef2f2ae409c5bd858bd0 (diff) | |
download | gcc-10c7be7ea6e54fc16864f455ffd8e57404b1a467.tar.gz |
2012-05-11 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 187397 using svnmerge
gimple_seq are disappearing!
[gcc/]
2012-05-11 Basile Starynkevitch <basile@starynkevitch.net>
{{for merge with trunk svn 187397, since gimple_seq are
disappearing in GCC 4.8}}
* melt-runtime.h (melt_gt_ggc_mx_gimple_seq_d): New declaration
(gt_ggc_mx_gimple_seq_d): Macro defined when GCC 4.8 only.
* melt-runtime.c (melt_gt_ggc_mx_gimple_seq_d): New function,
defined for GCC 4.8 only.
* melt/warmelt-debug.melt (melt_debug_fun): Add cast in our
warning diagnostic to avoid a warning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@187401 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r-- | gcc/optabs.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c index 7ef513acae6..9a549ff0667 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -4152,6 +4152,7 @@ prepare_cmp_insn (rtx x, rtx y, enum rtx_code comparison, rtx size, if (!SCALAR_FLOAT_MODE_P (mode)) { rtx result; + enum machine_mode ret_mode; /* Handle a libcall just for the mode we are using. */ libfunc = optab_libfunc (cmp_optab, mode); @@ -4166,9 +4167,9 @@ prepare_cmp_insn (rtx x, rtx y, enum rtx_code comparison, rtx size, libfunc = ulibfunc; } + ret_mode = targetm.libgcc_cmp_return_mode (); result = emit_library_call_value (libfunc, NULL_RTX, LCT_CONST, - targetm.libgcc_cmp_return_mode (), - 2, x, mode, y, mode); + ret_mode, 2, x, mode, y, mode); /* There are two kinds of comparison routines. Biased routines return 0/1/2, and unbiased routines return -1/0/1. Other parts @@ -4186,7 +4187,7 @@ prepare_cmp_insn (rtx x, rtx y, enum rtx_code comparison, rtx size, if (!TARGET_LIB_INT_CMP_BIASED && !ALL_FIXED_POINT_MODE_P (mode)) { if (unsignedp) - x = plus_constant (result, 1); + x = plus_constant (ret_mode, result, 1); else y = const0_rtx; } @@ -8252,7 +8253,7 @@ maybe_legitimize_operand_same_code (enum insn_code icode, unsigned int opno, enum machine_mode mode; last = get_last_insn (); - mode = targetm.addr_space.address_mode (MEM_ADDR_SPACE (mem)); + mode = get_address_mode (mem); mem = replace_equiv_address (mem, copy_to_mode_reg (mode, addr)); if (insn_operand_matches (icode, opno, mem)) { |