diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2004-01-26 20:21:11 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2004-01-26 20:21:11 +0000 |
commit | d6456562b6801f0147fd10fa00c4fd76709d6b2b (patch) | |
tree | fc522414beed0e8a0f60e44e9b52eb9003e9699d | |
parent | 6f69173e896f251b47075d29b7d146e6b51fc5ac (diff) | |
download | gcc-d6456562b6801f0147fd10fa00c4fd76709d6b2b.zip gcc-d6456562b6801f0147fd10fa00c4fd76709d6b2b.tar.gz gcc-d6456562b6801f0147fd10fa00c4fd76709d6b2b.tar.bz2 |
h8300.c (h8300_tiny_constant_address_p): Use a switch statement instead of a chain of if statements.
* config/h8300/h8300.c (h8300_tiny_constant_address_p): Use a
switch statement instead of a chain of if statements.
From-SVN: r76663
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/h8300/h8300.c | 27 |
2 files changed, 20 insertions, 12 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2bdeffe..483a47a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-01-26 Kazu Hirata <kazu@cs.umass.edu> + + * config/h8300/h8300.c (h8300_tiny_constant_address_p): Use a + switch statement instead of a chain of if statements. + 2004-01-26 Jeff Law <law@redhat.com> * doc/contrib.texi: Minor cleanup for Paolo Carlini's entry. Add diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c index 3c503a9..97f7e9f 100644 --- a/gcc/config/h8300/h8300.c +++ b/gcc/config/h8300/h8300.c @@ -4434,21 +4434,24 @@ h8300_tiny_constant_address_p (rtx x) unsigned HOST_WIDE_INT addr; - /* We accept symbols declared with tiny_data. */ - if (GET_CODE (x) == SYMBOL_REF) - return (SYMBOL_REF_FLAGS (x) & SYMBOL_FLAG_TINY_DATA) != 0; + switch (GET_CODE (x)) + { + case SYMBOL_REF: + /* We accept symbols declared with tiny_data. */ + return (SYMBOL_REF_FLAGS (x) & SYMBOL_FLAG_TINY_DATA) != 0; - if (GET_CODE (x) != CONST_INT) - return 0; + case CONST_INT: + addr = INTVAL (x); + return (TARGET_NORMAL_MODE + || (TARGET_H8300H + && (IN_RANGE (addr, h1, h2) || IN_RANGE (addr, h3, h4))) + || (TARGET_H8300S + && (IN_RANGE (addr, s1, s2) || IN_RANGE (addr, s3, s4)))); - addr = INTVAL (x); + default: + return 0; + } - return (0 - || TARGET_NORMAL_MODE - || (TARGET_H8300H - && (IN_RANGE (addr, h1, h2) || IN_RANGE (addr, h3, h4))) - || (TARGET_H8300S - && (IN_RANGE (addr, s1, s2) || IN_RANGE (addr, s3, s4)))); } int |