]> gcc.gnu.org Git - gcc.git/commitdiff
re PR bootstrap/61084 (wide-int merge broke Solaris/SPARC bootstrap)
authorRichard Sandiford <r.sandiford@uk.ibm.com>
Wed, 14 May 2014 15:42:52 +0000 (15:42 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Wed, 14 May 2014 15:42:52 +0000 (15:42 +0000)
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.

From-SVN: r210428

gcc/ChangeLog
gcc/config/sparc/sparc.md

index bd0894d6eab78c53072949b73bcbaa5d3abecd35..5af99f4224e8983b76eba4ced975b323ea878e15 100644 (file)
@@ -1,3 +1,9 @@
+2014-05-14  Richard Sandiford  <r.sandiford@uk.ibm.com>
+
+       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.
+
 2014-05-14  Martin Jambor  <mjambor@suse.cz>
 
        PR ipa/60897
index e2a4669e05d297d568f71618c6611bcf85361ebc..d78664a53bd6d170300b9b60ae5426124c04488c 100644 (file)
   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);
   [(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"
   [(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
   [(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.
This page took 0.090302 seconds and 5 git commands to generate.