This version addresses earlier comments and has an updated testsuite (still no LTO tests however). The assembler statements also no stay in order with ordered statements.
It doesn't disable sorting of paritions with ordered symbols. I think that's an existing bug and is best addressed separately. Passed LTO boot strap and test on x86_64-linux, plus build of a large project that needs LTO order. -Andi