summaryrefslogtreecommitdiff
path: root/gcc/config/sparc/sparc.md
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-14 15:42:52 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-14 15:42:52 +0000
commite0db3f6a36be4d7e48e1188ff9a71d3b244836d0 (patch)
tree4ccccd4afe028d71a59c6e9d0472ef0eea77d793 /gcc/config/sparc/sparc.md
parent7d7471caf25baecad3e82e1c2fee306276d3610a (diff)
downloadgcc-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.md8
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.