rs6000: Use ULL on big hexadecimal literal
authorSegher Boessenkool <segher@kernel.crashing.org>
Tue, 12 Nov 2019 21:56:13 +0000 (22:56 +0100)
committerSegher Boessenkool <segher@gcc.gnu.org>
Tue, 12 Nov 2019 21:56:13 +0000 (22:56 +0100)
C++98 does not have long long int, and does not use (unsigned) long
long int for hexadecimal literals.  So let's use an ULL suffix here,
which is still not strict C++98, but which works with more compilers.

* config/rs6000/rs6000.md (rs6000_set_fpscr_drn): Use ULL on big
hexadecimal literal.

From-SVN: r278107

gcc/ChangeLog
gcc/config/rs6000/rs6000.md

index 574b59845583c5ee41292dd6032a3d2041dbf6ae..e8ebbecf1b16b1796c2a3fa6c51ba7c750c8ab84 100644 (file)
@@ -1,3 +1,8 @@
+2019-11-12  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       * config/rs6000/rs6000.md (rs6000_set_fpscr_drn): Use ULL on big
+       hexadecimal literal.
+
 2019-11-12  Segher Boessenkool  <segher@kernel.crashing.org>
 
        * config/rs6000/vsx.md (xscmpexpdp_<code> for CMP_TEST): Handle
index cbfe38bef9477151222878744ef808ddceeba0bd..040fc886057cca2e829d9c38ee1b2018bcf22414 100644 (file)
       /* Insert new RN mode into FSCPR.  */
       emit_insn (gen_rs6000_mffs (tmp_df));
       tmp_di = simplify_gen_subreg (DImode, tmp_df, DFmode, 0);
-      emit_insn (gen_anddi3 (tmp_di, tmp_di, GEN_INT (0xFFFFFFF8FFFFFFFF)));
+      emit_insn (gen_anddi3 (tmp_di, tmp_di, GEN_INT (0xFFFFFFF8FFFFFFFFULL)));
       emit_insn (gen_iordi3 (tmp_di, tmp_di, tmp_rn));
 
       /* Need to write to field 7.  The fields are [0:15].  The equation to