* [PATCH 0/7] More ifdef reduction
@ 2015-05-23 22:45 tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 1/7] always define HAVE_lo_sum tbsaunde+gcc
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-23 22:45 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
Hi,
yet more of the same.
each individually bootstrapped + regtested on x86_64-linux-gnu, and made sure
config-list.mk was fine at the end. I expect this stuff is all still
preapproved so committing to trunk.
Trev
Trevor Saunders (7):
always define HAVE_lo_sum
provide default for HAVE_mem_thread_fence
always define HAVE_memory_barrier
provide default for HAVE_mem_signal_fence
add default for HAVE_load_multiple
add default for HAVE_store_multiple
add default for HAVE_tablejump
gcc/ChangeLog | 46 ++++++++++++++++++++++++++++++++
gcc/combine.c | 10 +++----
gcc/config/darwin.c | 3 +--
gcc/defaults.h | 60 ++++++++++++++++++++++++++++++++++++++++++
gcc/expr.c | 11 --------
gcc/genconfig.c | 2 ++
gcc/lra-constraints.c | 72 +++++++++++++++++++++++++--------------------------
gcc/optabs.c | 14 ----------
gcc/stmt.c | 4 ---
9 files changed, 148 insertions(+), 74 deletions(-)
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 6/7] add default for HAVE_store_multiple
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 1/7] always define HAVE_lo_sum tbsaunde+gcc
@ 2015-05-23 22:45 ` tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 2/7] provide default for HAVE_mem_thread_fence tbsaunde+gcc
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-23 22:45 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_store_multiple): New function.
(HAVE_store_multiple): Add default value.
* expr.c (move_block_from_reg): Adjust.
---
gcc/ChangeLog | 6 ++++++
gcc/defaults.h | 10 ++++++++++
gcc/expr.c | 2 --
3 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5d609d4..99ee6dd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+ * defaults.h (gen_store_multiple): New function.
+ (HAVE_store_multiple): Add default value.
+ * expr.c (move_block_from_reg): Adjust.
+
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
* defaults.h (gen_load_multiple): New function.
(HAVE_load_multiple): Add default value.
* expr.c (move_block_to_reg): Adjust.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index ea5ff80..566841b 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1484,6 +1484,16 @@ gen_load_multiple (rtx, rtx, rtx)
}
#endif
+#ifndef HAVE_store_multiple
+#define HAVE_store_multiple 0
+static inline rtx
+gen_store_multiple (rtx, rtx, rtx)
+{
+ gcc_unreachable ();
+ return NULL;
+}
+#endif
+
#endif /* GCC_INSN_FLAGS_H */
#endif /* ! GCC_DEFAULTS_H */
diff --git a/gcc/expr.c b/gcc/expr.c
index c4b39f4..0dad737 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1548,7 +1548,6 @@ move_block_from_reg (int regno, rtx x, int nregs)
return;
/* See if the machine can do this with a store multiple insn. */
-#ifdef HAVE_store_multiple
if (HAVE_store_multiple)
{
rtx_insn *last = get_last_insn ();
@@ -1562,7 +1561,6 @@ move_block_from_reg (int regno, rtx x, int nregs)
else
delete_insns_since (last);
}
-#endif
for (i = 0; i < nregs; i++)
{
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/7] provide default for HAVE_mem_thread_fence
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 1/7] always define HAVE_lo_sum tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 6/7] add default for HAVE_store_multiple tbsaunde+gcc
@ 2015-05-23 22:45 ` tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 3/7] always define HAVE_memory_barrier tbsaunde+gcc
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-23 22:45 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_mem_thread_fence): New function.
(HAVE_mem_thread_fence): Add default definition.
* optabs.c: Adjust.
---
gcc/ChangeLog | 6 ++++++
gcc/defaults.h | 10 ++++++++++
gcc/optabs.c | 4 ----
3 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 360f013..2f40e8d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+ * defaults.h (gen_mem_thread_fence): New function.
+ (HAVE_mem_thread_fence): Add default definition.
+ * optabs.c: Adjust.
+
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
* combine.c (find_split_point): Check the value of HAVE_lo_sum
instead of if it is defined.
(combine_simplify_rtx): Likewise.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index e7bbcb8..72b290a 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1444,6 +1444,16 @@ gen_epilogue ()
}
#endif
+#ifndef HAVE_mem_thread_fence
+#define HAVE_mem_thread_fence 0
+static inline rtx
+gen_mem_thread_fence (rtx)
+{
+ gcc_unreachable ();
+ return NULL;
+}
+#endif
+
#endif /* GCC_INSN_FLAGS_H */
#endif /* ! GCC_DEFAULTS_H */
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 21150db..197e4ae 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -7589,10 +7589,6 @@ expand_asm_memory_barrier (void)
/* This routine will either emit the mem_thread_fence pattern or issue a
sync_synchronize to generate a fence for memory model MEMMODEL. */
-#ifndef HAVE_mem_thread_fence
-# define HAVE_mem_thread_fence 0
-# define gen_mem_thread_fence(x) (gcc_unreachable (), NULL_RTX)
-#endif
#ifndef HAVE_memory_barrier
# define HAVE_memory_barrier 0
# define gen_memory_barrier() (gcc_unreachable (), NULL_RTX)
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/7] always define HAVE_memory_barrier
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
` (2 preceding siblings ...)
2015-05-23 22:45 ` [PATCH 2/7] provide default for HAVE_mem_thread_fence tbsaunde+gcc
@ 2015-05-23 22:45 ` tbsaunde+gcc
2015-05-24 4:24 ` [PATCH 5/7] add default for HAVE_load_multiple tbsaunde+gcc
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-23 22:45 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_memory_barrier): New function.
(HAVE_memory_barrier): Add default value.
* optabs.c: Adjust.
---
gcc/ChangeLog | 6 ++++++
gcc/defaults.h | 10 ++++++++++
gcc/optabs.c | 5 -----
3 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2f40e8d..cd0358a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+ * defaults.h (gen_memory_barrier): New function.
+ (HAVE_memory_barrier): Add default value.
+ * optabs.c: Adjust.
+
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
* defaults.h (gen_mem_thread_fence): New function.
(HAVE_mem_thread_fence): Add default definition.
* optabs.c: Adjust.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index 72b290a..a7455e5 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1454,6 +1454,16 @@ gen_mem_thread_fence (rtx)
}
#endif
+#ifndef HAVE_memory_barrier
+#define HAVE_memory_barrier 0
+static inline rtx
+gen_memory_barrier ()
+{
+ gcc_unreachable ();
+ return NULL;
+}
+#endif
+
#endif /* GCC_INSN_FLAGS_H */
#endif /* ! GCC_DEFAULTS_H */
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 197e4ae..d3c1d21 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -7589,11 +7589,6 @@ expand_asm_memory_barrier (void)
/* This routine will either emit the mem_thread_fence pattern or issue a
sync_synchronize to generate a fence for memory model MEMMODEL. */
-#ifndef HAVE_memory_barrier
-# define HAVE_memory_barrier 0
-# define gen_memory_barrier() (gcc_unreachable (), NULL_RTX)
-#endif
-
void
expand_mem_thread_fence (enum memmodel model)
{
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/7] always define HAVE_lo_sum
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
@ 2015-05-23 22:45 ` tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 6/7] add default for HAVE_store_multiple tbsaunde+gcc
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-23 22:45 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* combine.c (find_split_point): Check the value of HAVE_lo_sum
instead of if it is defined.
(combine_simplify_rtx): Likewise.
* lra-constraints.c (process_address_1): Likewise.
* config/darwin.c: Adjust.
* genconfig.c (main): Always define HAVE_lo_sum.
---
gcc/ChangeLog | 9 +++++++
gcc/combine.c | 10 +++----
gcc/config/darwin.c | 3 +--
gcc/genconfig.c | 2 ++
gcc/lra-constraints.c | 72 +++++++++++++++++++++++++--------------------------
5 files changed, 51 insertions(+), 45 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3ce1628..360f013 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
+ * combine.c (find_split_point): Check the value of HAVE_lo_sum
+ instead of if it is defined.
+ (combine_simplify_rtx): Likewise.
+ * lra-constraints.c (process_address_1): Likewise.
+ * config/darwin.c: Adjust.
+ * genconfig.c (main): Always define HAVE_lo_sum.
+
2015-05-23 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* genmatch.c (parser::parse_operation): Reject expanding operator-list inside 'for'.
diff --git a/gcc/combine.c b/gcc/combine.c
index 0817af2..73d141e 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -4785,11 +4785,10 @@ find_split_point (rtx *loc, rtx_insn *insn, bool set_src)
return find_split_point (&SUBREG_REG (x), insn, false);
case MEM:
-#ifdef HAVE_lo_sum
/* If we have (mem (const ..)) or (mem (symbol_ref ...)), split it
using LO_SUM and HIGH. */
- if (GET_CODE (XEXP (x, 0)) == CONST
- || GET_CODE (XEXP (x, 0)) == SYMBOL_REF)
+ if (HAVE_lo_sum && (GET_CODE (XEXP (x, 0)) == CONST
+ || GET_CODE (XEXP (x, 0)) == SYMBOL_REF))
{
machine_mode address_mode = get_address_mode (x);
@@ -4799,7 +4798,6 @@ find_split_point (rtx *loc, rtx_insn *insn, bool set_src)
XEXP (x, 0)));
return &XEXP (XEXP (x, 0), 0);
}
-#endif
/* If we have a PLUS whose second operand is a constant and the
address is not valid, perhaps will can split it up using
@@ -5857,16 +5855,14 @@ combine_simplify_rtx (rtx x, machine_mode op0_mode, int in_dest,
SUBST (XEXP (x, 0), XEXP (XEXP (x, 0), 0));
break;
-#ifdef HAVE_lo_sum
case LO_SUM:
/* Convert (lo_sum (high FOO) FOO) to FOO. This is necessary so we
can add in an offset. find_split_point will split this address up
again if it doesn't match. */
- if (GET_CODE (XEXP (x, 0)) == HIGH
+ if (HAVE_lo_sum && GET_CODE (XEXP (x, 0)) == HIGH
&& rtx_equal_p (XEXP (XEXP (x, 0), 0), XEXP (x, 1)))
return XEXP (x, 1);
break;
-#endif
case PLUS:
/* (plus (xor (and <foo> (const_int pow2 - 1)) <c>) <-c>)
diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c
index 5ea7088..ea7eec1 100644
--- a/gcc/config/darwin.c
+++ b/gcc/config/darwin.c
@@ -149,8 +149,7 @@ int generating_for_darwin_version ;
section * darwin_sections[NUM_DARWIN_SECTIONS];
/* While we transition to using in-tests instead of ifdef'd code. */
-#ifndef HAVE_lo_sum
-#define HAVE_lo_sum 0
+#if !HAVE_lo_sum
#define gen_macho_high(a,b) (a)
#define gen_macho_low(a,b,c) (a)
#endif
diff --git a/gcc/genconfig.c b/gcc/genconfig.c
index 7237dede..a0a834a 100644
--- a/gcc/genconfig.c
+++ b/gcc/genconfig.c
@@ -360,6 +360,8 @@ main (int argc, char **argv)
if (have_lo_sum_flag)
printf ("#define HAVE_lo_sum 1\n");
+ else
+ printf ("#define HAVE_lo_sum 0\n");
if (have_rotate_flag)
printf ("#define HAVE_rotate 1\n");
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index c0f2995..a8d0820 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -2962,42 +2962,42 @@ process_address_1 (int nop, bool check_only_p,
rtx addr = *ad.inner;
new_reg = lra_create_new_reg (Pmode, NULL_RTX, cl, "addr");
-#ifdef HAVE_lo_sum
- {
- rtx_insn *insn;
- rtx_insn *last = get_last_insn ();
-
- /* addr => lo_sum (new_base, addr), case (2) above. */
- insn = emit_insn (gen_rtx_SET
- (new_reg,
- gen_rtx_HIGH (Pmode, copy_rtx (addr))));
- code = recog_memoized (insn);
- if (code >= 0)
- {
- *ad.inner = gen_rtx_LO_SUM (Pmode, new_reg, addr);
- if (! valid_address_p (ad.mode, *ad.outer, ad.as))
- {
- /* Try to put lo_sum into register. */
- insn = emit_insn (gen_rtx_SET
- (new_reg,
- gen_rtx_LO_SUM (Pmode, new_reg, addr)));
- code = recog_memoized (insn);
- if (code >= 0)
- {
- *ad.inner = new_reg;
- if (! valid_address_p (ad.mode, *ad.outer, ad.as))
- {
- *ad.inner = addr;
- code = -1;
- }
- }
-
- }
- }
- if (code < 0)
- delete_insns_since (last);
- }
-#endif
+ if (HAVE_lo_sum)
+ {
+ rtx_insn *insn;
+ rtx_insn *last = get_last_insn ();
+
+ /* addr => lo_sum (new_base, addr), case (2) above. */
+ insn = emit_insn (gen_rtx_SET
+ (new_reg,
+ gen_rtx_HIGH (Pmode, copy_rtx (addr))));
+ code = recog_memoized (insn);
+ if (code >= 0)
+ {
+ *ad.inner = gen_rtx_LO_SUM (Pmode, new_reg, addr);
+ if (! valid_address_p (ad.mode, *ad.outer, ad.as))
+ {
+ /* Try to put lo_sum into register. */
+ insn = emit_insn (gen_rtx_SET
+ (new_reg,
+ gen_rtx_LO_SUM (Pmode, new_reg, addr)));
+ code = recog_memoized (insn);
+ if (code >= 0)
+ {
+ *ad.inner = new_reg;
+ if (! valid_address_p (ad.mode, *ad.outer, ad.as))
+ {
+ *ad.inner = addr;
+ code = -1;
+ }
+ }
+
+ }
+ }
+ if (code < 0)
+ delete_insns_since (last);
+ }
+
if (code < 0)
{
/* addr => new_base, case (2) above. */
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 5/7] add default for HAVE_load_multiple
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
` (3 preceding siblings ...)
2015-05-23 22:45 ` [PATCH 3/7] always define HAVE_memory_barrier tbsaunde+gcc
@ 2015-05-24 4:24 ` tbsaunde+gcc
2015-05-24 5:05 ` [PATCH 7/7] add default for HAVE_tablejump tbsaunde+gcc
2015-05-24 6:47 ` [PATCH 4/7] provide default for HAVE_mem_signal_fence tbsaunde+gcc
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-24 4:24 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_load_multiple): New function.
(HAVE_load_multiple): Add default value.
* expr.c (move_block_to_reg): Adjust.
---
gcc/ChangeLog | 6 ++++++
gcc/defaults.h | 10 ++++++++++
gcc/expr.c | 4 ----
3 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5e540b6..5d609d4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+ * defaults.h (gen_load_multiple): New function.
+ (HAVE_load_multiple): Add default value.
+ * expr.c (move_block_to_reg): Adjust.
+
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
* defaults.h (gen_mem_signal_fence): New function.
(HAVE_mem_signal_fence): Add default value.
* optabs.c: Adjust.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index 50004d5..ea5ff80 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1474,6 +1474,16 @@ gen_mem_signal_fence (rtx)
}
#endif
+#ifndef HAVE_load_multiple
+#define HAVE_load_multiple 0
+static inline rtx
+gen_load_multiple (rtx, rtx, rtx)
+{
+ gcc_unreachable ();
+ return NULL;
+}
+#endif
+
#endif /* GCC_INSN_FLAGS_H */
#endif /* ! GCC_DEFAULTS_H */
diff --git a/gcc/expr.c b/gcc/expr.c
index 3605e99..c4b39f4 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1507,10 +1507,8 @@ void
move_block_to_reg (int regno, rtx x, int nregs, machine_mode mode)
{
int i;
-#ifdef HAVE_load_multiple
rtx pat;
rtx_insn *last;
-#endif
if (nregs == 0)
return;
@@ -1519,7 +1517,6 @@ move_block_to_reg (int regno, rtx x, int nregs, machine_mode mode)
x = validize_mem (force_const_mem (mode, x));
/* See if the machine can do this with a load multiple insn. */
-#ifdef HAVE_load_multiple
if (HAVE_load_multiple)
{
last = get_last_insn ();
@@ -1533,7 +1530,6 @@ move_block_to_reg (int regno, rtx x, int nregs, machine_mode mode)
else
delete_insns_since (last);
}
-#endif
for (i = 0; i < nregs; i++)
emit_move_insn (gen_rtx_REG (word_mode, regno + i),
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 7/7] add default for HAVE_tablejump
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
` (4 preceding siblings ...)
2015-05-24 4:24 ` [PATCH 5/7] add default for HAVE_load_multiple tbsaunde+gcc
@ 2015-05-24 5:05 ` tbsaunde+gcc
2015-05-24 6:47 ` [PATCH 4/7] provide default for HAVE_mem_signal_fence tbsaunde+gcc
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-24 5:05 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_tablejump): New function.
(HAVE_tablejump): Add default value.
* expr.c: Adjust.
* stmt.c: Likewise.
---
gcc/ChangeLog | 7 +++++++
gcc/defaults.h | 10 ++++++++++
gcc/expr.c | 5 -----
gcc/stmt.c | 4 ----
4 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 99ee6dd..864ce02 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+ * defaults.h (gen_tablejump): New function.
+ (HAVE_tablejump): Add default value.
+ * expr.c: Adjust.
+ * stmt.c: Likewise.
+
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
* defaults.h (gen_store_multiple): New function.
(HAVE_store_multiple): Add default value.
* expr.c (move_block_from_reg): Adjust.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index 566841b..53d6682 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1494,6 +1494,16 @@ gen_store_multiple (rtx, rtx, rtx)
}
#endif
+#ifndef HAVE_tablejump
+#define HAVE_tablejump 0
+static inline rtx
+gen_tablejump (rtx, rtx)
+{
+ gcc_unreachable ();
+ return NULL;
+}
+#endif
+
#endif /* GCC_INSN_FLAGS_H */
#endif /* ! GCC_DEFAULTS_H */
diff --git a/gcc/expr.c b/gcc/expr.c
index 0dad737..dccaf8b 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -11226,11 +11226,6 @@ try_casesi (tree index_type, tree index_expr, tree minval, tree range,
}
/* Attempt to generate a tablejump instruction; same concept. */
-#ifndef HAVE_tablejump
-#define HAVE_tablejump 0
-#define gen_tablejump(x, y) (0)
-#endif
-
/* Subroutine of the next function.
INDEX is the value being switched on, with the lowest value
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 16a080a..303df72 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -796,10 +796,6 @@ dump_case_nodes (FILE *f, struct case_node *root,
#define HAVE_casesi 0
#endif
-#ifndef HAVE_tablejump
-#define HAVE_tablejump 0
-#endif
-
/* Return the smallest number of different values for which it is best to use a
jump-table instead of a tree of conditional branches. */
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 4/7] provide default for HAVE_mem_signal_fence
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
` (5 preceding siblings ...)
2015-05-24 5:05 ` [PATCH 7/7] add default for HAVE_tablejump tbsaunde+gcc
@ 2015-05-24 6:47 ` tbsaunde+gcc
6 siblings, 0 replies; 8+ messages in thread
From: tbsaunde+gcc @ 2015-05-24 6:47 UTC (permalink / raw)
To: gcc-patches
From: Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
gcc/ChangeLog:
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (gen_mem_signal_fence): New function.
(HAVE_mem_signal_fence): Add default value.
* optabs.c: Adjust.
---
gcc/ChangeLog | 6 ++++++
gcc/defaults.h | 10 ++++++++++
gcc/optabs.c | 5 -----
3 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cd0358a..5e540b6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+ * defaults.h (gen_mem_signal_fence): New function.
+ (HAVE_mem_signal_fence): Add default value.
+ * optabs.c: Adjust.
+
+2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
+
* defaults.h (gen_memory_barrier): New function.
(HAVE_memory_barrier): Add default value.
* optabs.c: Adjust.
diff --git a/gcc/defaults.h b/gcc/defaults.h
index a7455e5..50004d5 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1464,6 +1464,16 @@ gen_memory_barrier ()
}
#endif
+#ifndef HAVE_mem_signal_fence
+#define HAVE_mem_signal_fence 0
+static inline rtx
+gen_mem_signal_fence (rtx)
+{
+ gcc_unreachable ();
+ return NULL;
+}
+#endif
+
#endif /* GCC_INSN_FLAGS_H */
#endif /* ! GCC_DEFAULTS_H */
diff --git a/gcc/optabs.c b/gcc/optabs.c
index d3c1d21..49e1c53 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -7608,11 +7608,6 @@ expand_mem_thread_fence (enum memmodel model)
/* This routine will either emit the mem_signal_fence pattern or issue a
sync_synchronize to generate a fence for memory model MEMMODEL. */
-#ifndef HAVE_mem_signal_fence
-# define HAVE_mem_signal_fence 0
-# define gen_mem_signal_fence(x) (gcc_unreachable (), NULL_RTX)
-#endif
-
void
expand_mem_signal_fence (enum memmodel model)
{
--
2.4.0.78.g7c6ecbf
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2015-05-23 22:45 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-23 22:45 [PATCH 0/7] More ifdef reduction tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 1/7] always define HAVE_lo_sum tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 6/7] add default for HAVE_store_multiple tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 2/7] provide default for HAVE_mem_thread_fence tbsaunde+gcc
2015-05-23 22:45 ` [PATCH 3/7] always define HAVE_memory_barrier tbsaunde+gcc
2015-05-24 4:24 ` [PATCH 5/7] add default for HAVE_load_multiple tbsaunde+gcc
2015-05-24 5:05 ` [PATCH 7/7] add default for HAVE_tablejump tbsaunde+gcc
2015-05-24 6:47 ` [PATCH 4/7] provide default for HAVE_mem_signal_fence tbsaunde+gcc
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).