On 9/20/18 4:52 AM, Andrew Stubbs wrote: > On 19/09/18 17:38, Andrew Stubbs wrote: >> Here's an updated patch incorporating the RTL front-end changes. I had >> to change from "repeated 2x" to "repeated x2" because the former is >> not a valid C token, and apparently that's important. > > Here's a patch with self tests added, for both reading and writing. > > It also fixes a bug when the repeat was the last item in a list. > > OK? > > Andrew > > 180920-elide-repeated-RTL-elements.patch > > Elide repeated RTL elements. > > GCN's 64-lane vectors tend to make RTL dumps very long. This patch makes them > far more bearable by eliding long sequences of the same element into > "repeated" > messages. > > This also takes care of reading repeated sequences in the RTL front-end. > > There are self tests for both reading and writing. > > 2018-09-20 Andrew Stubbs <a...@codesourcery.com> > Jan Hubicka <j...@suse.cz> > Martin Jambor <mjam...@suse.cz> > > gcc/ > * print-rtl.c (print_rtx_operand_codes_E_and_V): Print how many times > the same elements are repeated rather than printing all of them. > * read-rtl.c (rtx_reader::read_rtx_operand): Recognize and expand > "repeated" elements. > * read-rtl-function.c (test_loading_repeat): New function. > (read_rtl_function_c_tests): Call test_loading_repeat. > * rtl-tests.c (test_dumping_repeat): New function. > (rtl_tests_c_tests): Call test_dumping_repeat. > > gcc/testsuite/ > * selftests/repeat.rtl: New file. OK. Thanks for fixing the reader and adding selftests.
Jeff