diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-04-14 18:55:01 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-04-14 18:55:01 +0000 |
commit | bde1393a7b0583bc123ac962ed2f729b80cd7498 (patch) | |
tree | d9e8972ddece739bbdc248c5e33919ded2862cf7 /gcc/config/epiphany | |
parent | 8f8a206e72c6183084a6792ae98593944dd06fbd (diff) | |
download | gcc-bde1393a7b0583bc123ac962ed2f729b80cd7498.tar.gz |
2016-04-14 Basile Starynkevitch <basile@starynkevitch.net>
{{merging with even more of GCC 6, using subversion 1.9
svn merge -r228401:229500 ^/trunk
}}
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@234985 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/epiphany')
-rw-r--r-- | gcc/config/epiphany/epiphany.c | 37 | ||||
-rw-r--r-- | gcc/config/epiphany/epiphany.md | 2 | ||||
-rw-r--r-- | gcc/config/epiphany/epiphany.opt | 18 | ||||
-rw-r--r-- | gcc/config/epiphany/mode-switch-use.c | 10 | ||||
-rw-r--r-- | gcc/config/epiphany/resolve-sw-modes.c | 8 |
5 files changed, 21 insertions, 54 deletions
diff --git a/gcc/config/epiphany/epiphany.c b/gcc/config/epiphany/epiphany.c index 593c9a19124..c0578037329 100644 --- a/gcc/config/epiphany/epiphany.c +++ b/gcc/config/epiphany/epiphany.c @@ -22,41 +22,24 @@ along with GCC; see the file COPYING3. If not see #include "system.h" #include "coretypes.h" #include "backend.h" -#include "cfghooks.h" -#include "tree.h" +#include "target.h" #include "rtl.h" +#include "tree.h" #include "df.h" +#include "tm_p.h" +#include "stringpool.h" +#include "optabs.h" +#include "emit-rtl.h" +#include "recog.h" +#include "diagnostic-core.h" #include "alias.h" -#include "fold-const.h" #include "stor-layout.h" #include "varasm.h" #include "calls.h" -#include "stringpool.h" -#include "regs.h" -#include "insn-config.h" -#include "conditions.h" #include "output.h" #include "insn-attr.h" -#include "flags.h" -#include "insn-codes.h" -#include "optabs.h" -#include "expmed.h" -#include "dojump.h" #include "explow.h" -#include "emit-rtl.h" -#include "stmt.h" #include "expr.h" -#include "diagnostic-core.h" -#include "recog.h" -#include "toplev.h" -#include "tm_p.h" -#include "target.h" -#include "cfgrtl.h" -#include "cfganal.h" -#include "lcm.h" -#include "cfgbuild.h" -#include "cfgcleanup.h" -#include "langhooks.h" #include "tm-constrs.h" #include "tree-pass.h" /* for current_pass */ #include "context.h" @@ -1362,11 +1345,9 @@ epiphany_print_operand (FILE *file, rtx x, int code) /* We handle SFmode constants here as output_addr_const doesn't. */ if (GET_MODE (x) == SFmode) { - REAL_VALUE_TYPE d; long l; - REAL_VALUE_FROM_CONST_DOUBLE (d, x); - REAL_VALUE_TO_TARGET_SINGLE (d, l); + REAL_VALUE_TO_TARGET_SINGLE (*CONST_DOUBLE_REAL_VALUE (x), l); fprintf (file, "%s0x%08lx", IMMEDIATE_PREFIX, l); break; } diff --git a/gcc/config/epiphany/epiphany.md b/gcc/config/epiphany/epiphany.md index 428092601c0..4c8b5d6af83 100644 --- a/gcc/config/epiphany/epiphany.md +++ b/gcc/config/epiphany/epiphany.md @@ -982,7 +982,7 @@ rtx cmp = gen_rtx_LT (VOIDmode, cc1, CONST0_RTX (SFmode)); real_2expN (&offset, 31, SFmode); - limit = CONST_DOUBLE_FROM_REAL_VALUE (offset, SFmode); + limit = const_double_from_real_value (offset, SFmode); limit = force_reg (SFmode, limit); emit_insn (gen_fix_truncsfsi2 (operands[0], operands[1])); emit_insn (gen_subsf3_f (tmp, operands[1], limit)); diff --git a/gcc/config/epiphany/epiphany.opt b/gcc/config/epiphany/epiphany.opt index e2deed6db04..297ceb81a39 100644 --- a/gcc/config/epiphany/epiphany.opt +++ b/gcc/config/epiphany/epiphany.opt @@ -29,7 +29,7 @@ preferentially allocate registers that allow short instruction generation. mbranch-cost= Target RejectNegative Joined UInteger Var(epiphany_branch_cost) Init(3) -Set branch cost +Set branch cost. mcmove Target Mask(CMOVE) @@ -37,7 +37,7 @@ enable conditional move instruction usage. mnops= Target RejectNegative Joined UInteger Var(epiphany_n_nops) Init(0) -set number of nops to emit before each insn pattern +set number of nops to emit before each insn pattern. ; Problems with using the flags from fsub for comparison are: ; - Because of underflow (lack of subnormal numbers), different small numbers @@ -49,19 +49,19 @@ set number of nops to emit before each insn pattern ; equal. msoft-cmpsf Target Mask(SOFT_CMPSF) -Use software floating point comparisons +Use software floating point comparisons. msplit-lohi Target Mask(SPLIT_LOHI) -Enable split of 32 bit immediate loads into low / high part +Enable split of 32 bit immediate loads into low / high part. mpost-inc Target Mask(POST_INC) -Enable use of POST_INC / POST_DEC +Enable use of POST_INC / POST_DEC. mpost-modify Target Mask(POST_MODIFY) -Enable use of POST_MODIFY +Enable use of POST_MODIFY. mstack-offset= Target RejectNegative Joined UInteger Var(epiphany_stack_offset) Init(EPIPHANY_STACK_OFFSET) @@ -73,11 +73,11 @@ Assume round to nearest is selected for purposes of scheduling. mlong-calls Target Mask(LONG_CALLS) -Generate call insns as indirect calls +Generate call insns as indirect calls. mshort-calls Target Mask(SHORT_CALLS) -Generate call insns as direct calls +Generate call insns as direct calls. msmall16 Target Mask(SMALL16) @@ -105,7 +105,7 @@ Enum(attr_fp_mode) String(int) Value(FP_MODE_INT) may-round-for-trunc Target Mask(MAY_ROUND_FOR_TRUNC) -A floatig point to integer truncation may be replaced with rounding to save mode switching +A floatig point to integer truncation may be replaced with rounding to save mode switching. mvect-double Target Mask(VECT_DOUBLE) diff --git a/gcc/config/epiphany/mode-switch-use.c b/gcc/config/epiphany/mode-switch-use.c index e6d3dce2987..589ca336bc3 100644 --- a/gcc/config/epiphany/mode-switch-use.c +++ b/gcc/config/epiphany/mode-switch-use.c @@ -23,20 +23,12 @@ along with GCC; see the file COPYING3. If not see #include "system.h" #include "coretypes.h" #include "backend.h" -#include "cfghooks.h" #include "rtl.h" #include "df.h" +#include "tm_p.h" #include "emit-rtl.h" #include "tree-pass.h" #include "insn-attr.h" -#include "insn-config.h" -#include "recog.h" -#include "tm_p.h" -#include "cfgrtl.h" -#include "cfganal.h" -#include "lcm.h" -#include "cfgbuild.h" -#include "cfgcleanup.h" #ifndef TARGET_INSERT_MODE_SWITCH_USE #define TARGET_INSERT_MODE_SWITCH_USE NULL diff --git a/gcc/config/epiphany/resolve-sw-modes.c b/gcc/config/epiphany/resolve-sw-modes.c index de3204e5223..4f3d1b01344 100644 --- a/gcc/config/epiphany/resolve-sw-modes.c +++ b/gcc/config/epiphany/resolve-sw-modes.c @@ -22,19 +22,13 @@ along with GCC; see the file COPYING3. If not see #include "system.h" #include "coretypes.h" #include "backend.h" -#include "cfghooks.h" #include "rtl.h" #include "df.h" #include "tm_p.h" -#include "cfgrtl.h" -#include "cfganal.h" -#include "lcm.h" -#include "cfgbuild.h" -#include "cfgcleanup.h" #include "insn-config.h" -#include "insn-codes.h" #include "emit-rtl.h" #include "recog.h" +#include "cfgrtl.h" #include "insn-attr-common.h" #include "tree-pass.h" |