Commit ad26fb41 by Richard Kenner Committed by Richard Kenner

stor-layout.c (compute_record_mode): Relax restriction on fields crossing word…

stor-layout.c (compute_record_mode): Relax restriction on fields crossing word boundaries forcing BLKmode.

	* stor-layout.c (compute_record_mode): Relax restriction
	on fields crossing word boundaries forcing BLKmode.

From-SVN: r66463
parent 1fecc266
2003-05-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* stor-layout.c (compute_record_mode): Relax restriction
on fields crossing word boundaries forcing BLKmode.
2003-05-04 Neil Booth <neil@daikokuya.co.uk>
* cppinit.c (cpp_create_reader, post_options): Warn about
......
......@@ -1387,8 +1387,10 @@ compute_record_mode (type)
if (bitpos / BITS_PER_WORD
!= ((tree_low_cst (DECL_SIZE (field), 1) + bitpos - 1)
/ BITS_PER_WORD)
/* But there is no problem if the field is entire words. */
&& tree_low_cst (DECL_SIZE (field), 1) % BITS_PER_WORD != 0)
/* But there is no problem if the field is entire words
or bigger than a word. */
&& ! (tree_low_cst (DECL_SIZE (field), 1) % BITS_PER_WORD == 0
|| compare_tree_int (DECL_SIZE (field), BITS_PER_WORD) > 0))
return;
/* If this field is the whole struct, remember its mode so
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment