diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 24190a70d4e..ed0dc478547 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-11-22 Richard Sandiford + + * emit-rtl.c (init_derived_machine_modes): Make sure ptr_mode + has the same mode class as Pmode. + 2017-11-22 Thomas Preud'homme * config/arm/arm.c (cmse_nonsecure_call_clear_caller_saved): Get rid of diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index a0767116436..428e4743454 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -6003,7 +6003,8 @@ init_derived_machine_modes (void) byte_mode = opt_byte_mode.require (); word_mode = opt_word_mode.require (); - ptr_mode = int_mode_for_size (POINTER_SIZE, 0).require (); + ptr_mode = as_a + (mode_for_size (POINTER_SIZE, GET_MODE_CLASS (Pmode), 0).require ()); } /* Create some permanent unique rtl objects shared between all functions. */