Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 3/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

fasynchronous-unwind-tables

Determines whether unwind information is precise at an instruction boundary or at a call boundary.

Syntax

Linux:

-fasynchronous-unwind-tables

-fno-asynchronous-unwind-tables

macOS:

-fasynchronous-unwind-tables

-fno-asynchronous-unwind-tables

Windows:

None

Arguments

None

Default

Intel® 64 architecture: -fasynchronous-unwind-tables

The unwind table generated is precise at an instruction boundary, enabling accurate unwinding at any instruction.

IA-32 architecture (Linux* only): -fno-asynchronous-unwind-tables

The unwind table generated is precise at call boundaries only.

Description

This option determines whether unwind information is precise at an instruction boundary or at a call boundary. The compiler generates an unwind table in DWARF2 or DWARF3 format, depending on which format is supported on your system.

If -fno-asynchronous-unwind-tables is specified, the unwind table is precise at call boundaries only. In this case, the compiler will avoid creating unwind tables for routines such as the following:

  • A C++ routine that does not declare objects with destructors and does not contain calls to routines that might throw an exception.

  • A C/C++ or Fortran routine compiled without -fexceptions, and on Intel® 64 architecture, without -traceback.

  • A C/C++ or Fortran routine compiled with -fexceptions that does not contain calls to routines that might throw an exception.

IDE Equivalent

None

Alternate Options

None

See Also