An elf file contains multiple sections (.eh_frame, .eh_frame_shr) to store precise information about how stack unwdinging has to be done. This is also the basis for throwing exceptions (.gcc_except_table). Inserting inline assembly would certainly mess with these tables.
How is the compiler dealing with that? Is it parsing back the inline assembly and then update the tables or will stack unwinding (and therefore also exception handling) just break when inline assembly messes up the stack?