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. Ciao! Steven