On 10/23/2017 11:08 AM, Richard Sandiford wrote: > This patch changes the bitnum and bitsize arguments to > store_bit_field from unsigned HOST_WIDE_INTs to poly_uint64s. > The later part of store_bit_field_1 still needs to operate > on constant bit positions and sizes, so the patch splits > it out into a subfunction (store_integral_bit_field). > > > 2017-10-23 Richard Sandiford <richard.sandif...@linaro.org> > Alan Hayward <alan.hayw...@arm.com> > David Sherwood <david.sherw...@arm.com> > > gcc/ > * expmed.h (store_bit_field): Take bitsize and bitnum as > poly_uint64s rather than unsigned HOST_WIDE_INTs. > * expmed.c (simple_mem_bitfield_p): Likewise. Add a parameter > that returns the byte size. > (store_bit_field_1): Take bitsize and bitnum as > poly_uint64s rather than unsigned HOST_WIDE_INTs. Update call > to simple_mem_bitfield_p. Split the part that can only handle > constant bitsize and bitnum out into... > (store_integral_bit_field): ...this new function. > (store_bit_field): Take bitsize and bitnum as poly_uint64s rather > than unsigned HOST_WIDE_INTs. > (extract_bit_field_1): Update call to simple_mem_bitfield_p. OK. jeff