i386.c (ix86_option_override_internal): Enable flag_ree also for 32bit targets.
* config/i386/i386.c (ix86_option_override_internal): Enable flag_ree also for 32bit targets. testsuite/ChangeLog: * gcc.dg/pr50038.c: Move to ... * gcc.target/i386/pr50038.c: ... here. Test on all targets. From-SVN: r182605
This commit is contained in:
parent
67d7405ef4
commit
e0d2f03016
@ -1,3 +1,8 @@
|
|||||||
|
2011-12-21 Uros Bizjak <ubizjak@gmail.com>
|
||||||
|
|
||||||
|
* config/i386/i386.c (ix86_option_override_internal): Enable flag_ree
|
||||||
|
also for 32bit targets.
|
||||||
|
|
||||||
2011-12-21 Richard Henderson <rth@redhat.com>
|
2011-12-21 Richard Henderson <rth@redhat.com>
|
||||||
|
|
||||||
PR target/51552
|
PR target/51552
|
||||||
|
@ -3445,12 +3445,14 @@ ix86_option_override_internal (bool main_args_p)
|
|||||||
#define USE_X86_64_FRAME_POINTER 0
|
#define USE_X86_64_FRAME_POINTER 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Enable redundant extension instructions removal at -O2 and higher. */
|
||||||
|
if (optimize >= 2 && !global_options_set.x_flag_ree)
|
||||||
|
flag_ree = 1;
|
||||||
|
|
||||||
/* Set the default values for switches whose default depends on TARGET_64BIT
|
/* Set the default values for switches whose default depends on TARGET_64BIT
|
||||||
in case they weren't overwritten by command line options. */
|
in case they weren't overwritten by command line options. */
|
||||||
if (TARGET_64BIT)
|
if (TARGET_64BIT)
|
||||||
{
|
{
|
||||||
if (optimize > 1 && !global_options_set.x_flag_ree)
|
|
||||||
flag_ree = 1;
|
|
||||||
if (optimize >= 1 && !global_options_set.x_flag_omit_frame_pointer)
|
if (optimize >= 1 && !global_options_set.x_flag_omit_frame_pointer)
|
||||||
flag_omit_frame_pointer = !USE_X86_64_FRAME_POINTER;
|
flag_omit_frame_pointer = !USE_X86_64_FRAME_POINTER;
|
||||||
if (flag_asynchronous_unwind_tables == 2)
|
if (flag_asynchronous_unwind_tables == 2)
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
2011-12-21 Uros Bizjak <ubizjak@gmail.com>
|
||||||
|
|
||||||
|
* gcc.dg/pr50038.c: Move to ...
|
||||||
|
* gcc.target/i386/pr50038.c: ... here. Test on all targets.
|
||||||
|
|
||||||
2011-12-21 Jason Merrill <jason@redhat.com>
|
2011-12-21 Jason Merrill <jason@redhat.com>
|
||||||
|
|
||||||
PR c++/51611
|
PR c++/51611
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
/* PR target/50038 */
|
/* PR target/50038 */
|
||||||
/* { dg-do compile { target x86_64-*-* } } */
|
|
||||||
/* { dg-options "-O2" } */
|
/* { dg-options "-O2" } */
|
||||||
|
|
||||||
void pr50038(int len, unsigned char *in, unsigned char *out)
|
void
|
||||||
|
test (int len, unsigned char *in, unsigned char *out)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
unsigned char xr, xg;
|
unsigned char xr, xg;
|
||||||
@ -11,7 +11,7 @@ void pr50038(int len, unsigned char *in, unsigned char *out)
|
|||||||
{
|
{
|
||||||
xr = *in++;
|
xr = *in++;
|
||||||
xg = *in++;
|
xg = *in++;
|
||||||
xy = (unsigned char) ((19595*xr + 38470*xg) >> 16);
|
xy = (unsigned char) ((19595 * xr + 38470 * xg) >> 16);
|
||||||
|
|
||||||
*out++ = xy;
|
*out++ = xy;
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user