[ Previous | Next | Contents | Home | Search ]
AIX Version 4.3 Assembler Language Reference

.lcomm Pseudo-op

Purpose

Defines a local uninitialized block of storage.

Syntax

.lcomm Name1,Expression[,Name2]

Description

The .lcomm pseudo-op defines a local uninitialized block of storage called a local common (LC) section. At run time, this storage block will be reserved when the LC section is allocated at the end of the .data section. This storage block is for uninitialized data.

Use the .lcomm pseudo-op with local uninitialized data, which is data that will probably not be accessed outside the local assembly.

The symbol Name1 is a label at the top of the local uninitialized block of storage. The location counter for this LC section is incremented by the Expression parameter. A specific LC section can be specified by the Name2 parameter. Otherwise an unnamed section is used.

Parameters

Name1 Represents a relocatable symbol. The symbol Name1 is a label at the top of the local uninitialized block of storage. Name1 does not appear in the symbol table unless it is the operand of a .globl statement.
Expression Represents an absolute expression that is defined in the first pass of the assembler. The Expression parameter also increments the location counter for the LC section.
Name2 Represents a control section (csect) name that has storage mapping class BS and storage type CM. The Name2 parameter allows the programmer to specify the BS csect for the allocated storage. If a specific LC section is not specified by the Name2 parameter, an unnamed section is used.

Examples

  1. To set up 5KB of storage and refer to it as buffer :
    .lcomm buffer,5120
            # Can refer to this 5K
            # of storage as "buffer".
  2. To set up a label with the name proga :
    .lcomm b3,4,proga
            # b3 will be a label in a csect of class BS
            # and type CM with name "proga".

Related Information

Pseudo-ops Overview.

The .comm pseudo-op.


[ Previous | Next | Contents | Home | Search ]