.. highlight:: c .. _pragma_interface_scalar_memory_argument: Configure Argument as Scalar Memory Interface --------------------------------------------- **Syntax** ``#pragma LEGUP interface argument() type(memory) num_elements()`` **Description** This pragma specifies the scalar memory interface for an argument. The scalar memory interface is used by LegUp module to access external memory that has only one element. More details in :ref:`rtl_interface` section. **Parameters** +---------------------+-------------------+----------+---------+------------------------------------------------------------------------------------------------------+ | Parameter | Type | Optional | Default | Description | +=====================+===================+==========+=========+======================================================================================================+ | ``argument`` | String | No | | Argument name | +---------------------+-------------------+----------+---------+------------------------------------------------------------------------------------------------------+ | ``type`` | ``scalar_memory`` | No | | Interface type | +---------------------+-------------------+----------+---------+------------------------------------------------------------------------------------------------------+ | ``num_elements`` | Integer | Yes | | Specifies the number of elements of the argument array. Can override the array size in the argument. | +---------------------+-------------------+----------+---------+------------------------------------------------------------------------------------------------------+ **Position** At the beginning of the function definition block. **Examples** .. code-block:: c int fun(int a[]) { #pragma LEGUP interface argument(b) type(scalar_memory) num_elements(100) ... } --------------------------------------------------------------------------------