.file pseudo-op

Purpose

Identifies the file name of the source file and compiler-related information.

Syntax
   .file StringConstant
   .file StringConstant, StringConstant1
   .file StringConstant,[StringConstant1], StringConstant2
   .file StringConstant,[StringConstant1],[StringConstant2], StringConstant3

Description

The .file pseudo-op provides the symbol table information to the symbolic debugger and the ld command. StringConstant is the file name, and it is used as the name of an auxiliary symbol x_ftype == XTY_FN. If StringConstant1, StringConstant2, and StringConstant3 are specified, these values are added to the symbol table as the compiler time stamp with the x_ftype symbol set to XTY_CT; compiler version with the x_ftype symbol set to XTY_CV; and compiler-provided information with the x_ftype symbol set to XTY_CD. The .file pseudo-op does not make any other changes to the assembler operation and the pseudo op is added to the object code by a cascade compiler.

If the .file pseudo-op is not specified in the source code, the assembler processes the program considering the .file pseudo-op as the first statement. The assembler creates the .file pseudo op as the first statement by adding an entry in the symbol table with the source program name as the file name. If the source program is the standard input, the file name is noname. The assembler listing does not have this inserted entry.

Parameters

StringConstant
A string that specifies the file name.
StringConstant1
A string that specifies the compiler time stamp.
StringConstant2
A string that specifies the compiler version.
StringConstant3
A string that specifies arbitrary compiler information.

Examples

  1. Specify a file name.
    .file “myfile.c”
  2. Specify name, version, time stamp, and compiler information.
    .file “myfile.c”, “Version 99”, “01 Jan 2099”, “no options”
  3. Specify file name and time stamp, but do not specify the version and compiler information.
    .file “myfile.c”, , “Jan 1, 2099”