Development Reference Guides


Optimize Exception Handling Data

This content is specific to C++; it does not apply to
If a program requires support for exception handling, the compiler creates a special section containing DWARF directives that are used by the Linux* run-time to unwind and catch an exception.
This information is located in the .eh_frame section and may be shrunk using the compiler options listed below.
Options to specify:
Linux* :
Advantages of this method:
  • These options may shrink the size of the object or binary file by up to 15%, though the amount of the reduction depends on the target platform.
  • These options control whether unwind information is precise at an instruction boundary or at a call boundary. For example, option
    can be used for programs that may
    throw or catch exceptions.
Disadvantages of this method:
Both options may change the program's behavior:
  • Do not use option
    for programs that require standard C++ handling for objects of classes with destructors.
  • Do not use option
    for functions compiled with option
    that contain calls to other functions that might throw exceptions or for C++ functions that declare objects with destructors.
Please read the compiler option descriptions, which explain what the defaults and behavior are for each target platform.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at