iasl - Man Page

ACPI Source Language compiler/decompiler


iasl [<option>...] <input-file> ...


This manual page briefly documents the iasl command. The option list is taken from the iasl interactive help.

iasl is an ASL compiler and decompiler.  This command provides both the ability to translate one or more ASL source files to their corresponding AML binary files, and the ability to translate AML binary files back to readable ASL source.

Much more detailed documentation may be found at http://www.acpica.org/documentation/.



-@ <file>

Specify command file

-I <dir>

Specify additional include directory

-T <sig>|ALL|*

Create table template file for ACPI <sig>


Display compiler version


-D <symbol>

Define sybol for preprocessor use


Create prepocessed output file (*.i)


Preprocess only and create preprocessor output file (*.i)


Disable preprocessor

General Output

-p <prefix>

Specify path/filename prefix for all output files


Disable all errors and warnings (summary only)


Less verbose errors and warnings for use with IDEs


Enable optimization comments


Disable remarks


Disable signon


Set warning reporting level


Report warnings as errors

AML and Data Output Files


Create assembler or C source file (*.asm or *.c)


Create assembler or C include file (*.inc or *.h)


Create assembler, C, or ASL hex table (*.hex)

AML Code Generation


Disable all optimizations (compatibility mode)


Disable constant folding


Disable integer optimization to Zero/One/Ones


Disable named reference string optimization


Disable Resource Descriptor error checking


Ignore NoOp operators

-r <revision>

Override table header Revision (1-255)

ASL Listing Files


Create mixed listing file (ASL source and AML) (*.lst)


Create namespace file (*.nsp)


Create combined source file (expanded includes) (*.src)

ACPI Data Tables


Compile custom table containing generic operators


Create verbose templates (full disassembly)

AML Disassembler

-d [<file>]

Disassemble AML to ASL source code file (*.dsl)

-da [<file1>,<file2>]

Disassemble multiple tables from single namespace


Do not translate Buffers to Resource Templates

-dc [<file>]

Disassemble AML and immediately compile it
(Obtain DSDT from current system if no input file)

-e [<file1>,<file2>]

Include ACPI table(s) for external symbol resolution


Get ACPI tables and write to files (*.dat)


Ignore NoOp opcodes


Dump binary table date in hex format within output file



Additional help and compiler debug options


Display operators allowed in constant expressions


Display help for output file name generation


Display ACPI reserved method names


Display currently supported ACPI table names



Create debug file (full or parse tree only) (*.txt)


Ignore errors, force creation of AML output file(s)


Parse only, no output generation


Display compiles times and statistics

-x <level>

Set debug level for trace output


Do not insert new compiler ID for DataTables


iasl was written by Robert Moore <robert.moore@intel.com>.

This manual page was written by Mattia Dongili <malattia@debian.org>, for the Debian project (but may be used by others).  It was updated for the Fedora project by Al Stone <ahs3@redhat.com> (and may also be used by others).

Referenced By


January 23, 2013