diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0bff6d430e8..f24e24052a7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2002-04-02 Zack Weinberg + + * config/sh/sh.md: Don't use union real_extract. + 2002-04-02 Richard Henderson * libgcc2.c (__bb_exit_func): Revert 03-31 change. diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index ad17f117a1b..8c8f5309a87 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -7185,9 +7185,9 @@ { if (operands[1] != const0_rtx) { - union real_extract u; - memcpy (&u, &CONST_DOUBLE_LOW (operands[0]), sizeof u); - assemble_real (u.d, SFmode, GET_MODE_ALIGNMENT (SFmode)); + REAL_VALUE_TYPE d; + REAL_VALUE_FROM_CONST_DOUBLE (d, operands[0]); + assemble_real (d, SFmode, GET_MODE_ALIGNMENT (SFmode)); } return \"\"; }" @@ -7205,9 +7205,9 @@ { if (operands[1] != const0_rtx) { - union real_extract u; - memcpy (&u, &CONST_DOUBLE_LOW (operands[0]), sizeof u); - assemble_real (u.d, DFmode, GET_MODE_ALIGNMENT (DFmode)); + REAL_VALUE_TYPE d; + REAL_VALUE_FROM_CONST_DOUBLE (d, operands[0]); + assemble_real (d, DFmode, GET_MODE_ALIGNMENT (DFmode)); } return \"\"; }"