diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2995e5121b7..9dbd2125b06 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-12-05 Martin Jambor + + PR ipa/64192 + * ipa-prop.c (ipa_compute_jump_functions_for_edge): Convert alignment + from bits to bytes after checking they are byte-aligned. + 2014-12-05 Renlin Li * config/aarch64/aarch64-opts.h (AARCH64_CORE): Rename IDENT to SCHED. diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index eb83ae00baa..9fab47df261 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -1739,10 +1739,11 @@ ipa_compute_jump_functions_for_edge (struct func_body_info *fbi, unsigned align; if (get_pointer_alignment_1 (arg, &align, &hwi_bitpos) - && align > BITS_PER_UNIT) + && align % BITS_PER_UNIT == 0 + && hwi_bitpos % BITS_PER_UNIT == 0) { jfunc->alignment.known = true; - jfunc->alignment.align = align; + jfunc->alignment.align = align / BITS_PER_UNIT; jfunc->alignment.misalign = hwi_bitpos / BITS_PER_UNIT; } else