diff options
author | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-05-14 15:42:52 +0000 |
---|---|---|
committer | rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-05-14 15:42:52 +0000 |
commit | e0db3f6a36be4d7e48e1188ff9a71d3b244836d0 (patch) | |
tree | 4ccccd4afe028d71a59c6e9d0472ef0eea77d793 /gcc/config/sparc/sparc.md | |
parent | 7d7471caf25baecad3e82e1c2fee306276d3610a (diff) | |
download | gcc-e0db3f6a36be4d7e48e1188ff9a71d3b244836d0.tar.gz |
gcc/
PR target/61084
* config/sparc/sparc.md: Fix types of low and high in DI constant
splitter. Use gen_int_mode in some other splitters.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210428 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/sparc/sparc.md')
-rw-r--r-- | gcc/config/sparc/sparc.md | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md index e2a4669e05d..d78664a53bd 100644 --- a/gcc/config/sparc/sparc.md +++ b/gcc/config/sparc/sparc.md @@ -1886,7 +1886,7 @@ emit_insn (gen_movsi (gen_lowpart (SImode, operands[0]), operands[1])); #else - unsigned int low, high; + HOST_WIDE_INT low, high; low = trunc_int_for_mode (INTVAL (operands[1]), SImode); high = trunc_int_for_mode (INTVAL (operands[1]) >> 32, SImode); @@ -4822,7 +4822,7 @@ [(set (match_dup 3) (match_dup 4)) (set (match_dup 0) (ior:SI (not:SI (match_dup 3)) (match_dup 1)))] { - operands[4] = GEN_INT (~INTVAL (operands[2])); + operands[4] = gen_int_mode (~INTVAL (operands[2]), SImode); }) (define_insn_and_split "*or_not_di_sp32" @@ -4899,7 +4899,7 @@ [(set (match_dup 3) (match_dup 4)) (set (match_dup 0) (not:SI (xor:SI (match_dup 3) (match_dup 1))))] { - operands[4] = GEN_INT (~INTVAL (operands[2])); + operands[4] = gen_int_mode (~INTVAL (operands[2]), SImode); }) (define_split @@ -4911,7 +4911,7 @@ [(set (match_dup 3) (match_dup 4)) (set (match_dup 0) (xor:SI (match_dup 3) (match_dup 1)))] { - operands[4] = GEN_INT (~INTVAL (operands[2])); + operands[4] = gen_int_mode (~INTVAL (operands[2]), SImode); }) ;; Split DImode logical operations requiring two instructions. |