diff options
author | Hans-Peter Nilsson <hp@bitrange.com> | 2020-07-29 02:46:09 +0200 |
---|---|---|
committer | Hans-Peter Nilsson <hp@bitrange.com> | 2020-07-29 02:46:09 +0200 |
commit | 5c180464b7b0827b3cc07a78e96dfe55352db33f (patch) | |
tree | 446856e47fb81d05e5b485d72245a99c1d55394e | |
parent | eb08b5d1d79dca9d683d817806b338ad741da242 (diff) | |
download | gcc-5c180464b7b0827b3cc07a78e96dfe55352db33f.zip gcc-5c180464b7b0827b3cc07a78e96dfe55352db33f.tar.gz gcc-5c180464b7b0827b3cc07a78e96dfe55352db33f.tar.bz2 |
config/mmix/mmix.h (NO_FUNCTION_CSE): Define to 1.
The tests gcc.dg/tree-ssa/loop-1.c and gcc.dg/weak/typeof-2.c
assume this setting and are as a consequence riddled with
exceptions for targets that actually do yield better code when
calling through a register rather than repeatedly the same
symbol. Nonetheless, defining it makes sense for MMIX.
(Even better IMHO, this macro shouldn't exist and instead rtx
costs be used or perhaps just a target-specific default of
flag_no_function_cse.)
gcc:
* config/mmix/mmix.h (NO_FUNCTION_CSE): Define to 1.
-rw-r--r-- | gcc/config/mmix/mmix.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h index 9317c20..ac0be10 100644 --- a/gcc/config/mmix/mmix.h +++ b/gcc/config/mmix/mmix.h @@ -577,6 +577,9 @@ typedef struct { int regs; int lib; } CUMULATIVE_ARGS; #define SLOW_BYTE_ACCESS 0 +/* A PUSHJ doesn't cost more than a PUSHGO, so don't needlessly create + the latter. */ +#define NO_FUNCTION_CSE 1 /* Node: Sections */ |