On 07/20/2017 06:03 PM, Jim Wilson wrote:
I wasn't sure what to make of your last message, so I tried to see if I could build a toolchain that defaults to stabs so I could look at this. I discovered that -freorder-functions doesn't work with stabs on an elf target, as we get a cross section label subtraction that the assembler can't compute. I had to manually disable that optimization. I also had to disable the x86 specific change to enable -freorder-blocks-and-partition at -O2. I managed to get it working for x86_64-linux and i686-pc-cygwin. But the fact that -O2 and stabs don't work together by default anymore suggest that there are no serious stabs users except on old legacy systems that don't support named sections, and hence don't support -freorder-functions.
Sorry if I was unclear. Indeed a complete build failed building libraries as you describe. But for testing purposes I copied stabs-preferring xg++/xgcc and cc1/cc1plus to an dwarf install and pointed gdb at that. Plus some manual testing.
Anyways, your new dbxout.c patch looks good. And maybe we should think about deprecating the stabs support some day.
agreed. I have committed the patch series, thanks all for comments. nathan -- Nathan Sidwell