On Mon, Mar 26, 2012 at 9:26 AM, Steven Bosscher <stevenb....@gmail.com> wrote: > On Mon, Mar 26, 2012 at 9:31 AM, Richard Guenther > <richard.guent...@gmail.com> wrote: >> On Mon, Mar 26, 2012 at 1:27 AM, Steven Bosscher <stevenb....@gmail.com> >> wrote: >>> Hello, >>> >>> This patch removes all calls to assemble_external from places other >>> than final.c and MI-thunk generators. >>> >>> This is step 2 toward addressing PR17982 on the trunk for GCC 4.8. The >>> next, and final, step will be to change pending_assemble_externals to >>> pending_assemble_visibility, and fold assemble_external_real() back >>> into assemble_external. >>> >>> Bootstrapped & tested all default languages on >>> x86_64-unknown-linux-gnu and on powerpc64-unknown-linux-gnu. >>> >>> Also cross-built c and c++ to mips-elf and tested on mips-sim >>> (mips-elf was the only target I could find that really emits something >>> for its ASM_OUTPUT_EXTERNAL target macro and has a sim in gdb. I >>> hard-coded mips_output_external, by replacing "if >>> (!TARGET_EXPLICIT_RELOCS && ..." with "if (1 && ..."). >>> >>> OK for trunk? >> >> Ok. (I think the remaining TREE_USED sets look dubious and may not >> be needed, too?) > > I'm not sure. I think some of them may still be necessary, because > they were changed relatively recently (r126144). So I left them in for > now. > > Actually, the whole back end is full of cleanup opportunities, now > that the compiler always works in unit-at-a-time mode. But let's start > small. >
It may have caused: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52730 -- H.J.