[COFF] Conditions, AKA exceptions.

Paul Winalski paul.winalski at gmail.com
Tue Mar 14 03:10:17 AEST 2023


On 3/13/23, Ralph Corderoy <ralph at inputplus.co.uk> wrote:
>
>> That said, I absolutely loathe exceptions with all my heart.
>
> I'm not a fan either.

Exceptions play merry hell with compiler optimizations.  If you are in
a piece of code where an exception can occur, unless you have
knowledge of the global side-effects of the handler(s) that might get
invoked you must abandon any attempts to do data flow analysis of
global data items.

The C++ Standard Library is fond of using throw and catch exception
handling.  An optimizing compiler pretty much has to throw all data
flow optimization involving global variables, or things passed to a
callee by pointer, if anything in the call chain calls a C++ Standard
Library routine.

>From a compiler writer's perspective, the name STD for the C++
Standard Library is most apt.  STD routines are a disease that infects
anything that touches them.

-Paul W.


More information about the COFF mailing list