This is the mail archive of the
mailing list for the GCC project.
Re: C++: Letting compiler know asm block can call function that can throw?
> Motion across hardreg sets/uses are not restricted. And I would not expect
> an optimizing compiler to do that (it's your own fault to use hardregs in
> complex C code).
Well, the syscall sequence is an example of somehting that should be inlined
into arbitrary code w/o potential risk of ICEs. But I guess if things works in
practice (as they seem), we don't need to worry much at the moment. Most of
code movement we do is very simple. I don't see how to convince GCC to move
memcpy or division into the middle of a basic block containing the libcall
sequence.... Even when the basic block can be broken up with
-fno-call-exceptions at the asm statement by an EH edge...