---
name: "dwarf_producer_set_isa"
section: "3"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/dwarf_producer_set_isa"
---

# dwarf\_producer\_set\_isa(3)

specify the instruction set architecture for a DWARF producer instance

## NAME

**dwarf\_producer\_set\_isa** – specify the instruction set architecture for a DWARF producer instance

## LIBRARY

library “libdwarf”

## SYNOPSIS

**#include \<libdwarf.h\>**

*int*\

**dwarf\_producer\_set\_isa**(*Dwarf\_P\_Debug dbg*, *enum Dwarf\_ISA isa*, *Dwarf\_Error \*err*);

## DESCRIPTION

The function **dwarf\_producer\_set\_isa**() sets the instruction set architecture for a DWARF producer instance.

Argument *dbg* should reference a DWARF producer instance allocated using one of the functions [dwarf\_producer\_init(3)](/dwarf_producer_init/3.md) or [dwarf\_producer\_init\_b(3)](/dwarf_producer_init_b/3.md).

Argument *isa* specifies the desired instruction set architecture. Legal values for this argument are those defined by the *enum Dwarf\_ISA* enumeration defined in the header file ⟨libdwarf.h⟩.

If the argument *err* is not NULL, it will be used to store error information in case of an error.

## RETURN VALUES

On success, the function **dwarf\_producer\_set\_isa**() returns DW\_DLV\_OK. In case of an error, this function returns DW\_DLV\_ERROR and sets the argument *err*.

## COMPATIBILITY

The **dwarf\_producer\_set\_isa**() function is a local extension.

## ERRORS

The **dwarf\_producer\_set\_isa**() function can fail with:

- \[DW\_DLE\_ARGUMENT\]

  The argument *dbg* was NULL.

- \[DW\_DLE\_ARGUMENT\]

  The argument *isa* was invalid.

## SEE ALSO

[dwarf(3)](/dwarf/3.md), [dwarf\_producer\_init(3)](/dwarf_producer_init/3.md), [dwarf\_producer\_init\_b(3)](/dwarf_producer_init_b/3.md)
