Discussion |
 |
The Assembler marks the relocatable object file to indicate
the minimum PA-RISC architecture version level required when executing
the object code corresponding to the source file. The linker marks
the program file with the highest version level required by any
of the object files linked into the program.
The Assembler uses the .LEVEL
directive to mark the relocatable object file with the proper PA-RISC
architecture version level. For example, if the code is expected
to run only on PA-RISC 1.1 architectures, a .LEVEL 1.1 should be
inserted at the beginning of the source file.
To assemble a source file for a PA-RISC 64-bit system, use
a .LEVEL 2.0W directive as the first directive in the source file.In
the source file, the Assembler emits warning messages whenever a
feature is used that is not appropriate for the specified .LEVEL
directive. The default is to produce a PA-RISC 1.0 relocatable object
file. If the default is used, any use of PA-RISC 1.1 or 2.0 features
in the assembly source file generates a warning messages.
If the code is expected to run on more than one level of PA-RISC
architecture, a run-time check should be used with a .ALLOW
directive. See “.ALLOW Directive”
in this chapter for an example of a run-time check.
The .LEVEL
directive is also used to indicate any implementation-specific extensions
that the source file depends on. The Assembler marks the relocatable
object file with information that indicates any implementation-specific
extensions that were specified in the .LEVEL
directive. The default for an assembly source file is no implementation-specific
extensions; the Assembler generates warning messages if an implementation-specific
extension is used.