SWARM-Bot Firmware  v1.0
Mobile robot OS - Embedded C/C++
gas.h File Reference

Assembler abstraction layer: GNU Assembler specifics. More...

Go to the source code of this file.

Macros

#define L(name)   .L##name
 
#define PUBLIC_FUNCTION_SEGMENT(name, segment)    gas_begin_func_segm name 1 segment
 
Control Statements
#define REPEAT(count)   .rept count
 Repeat the following statements count times. More...
 
#define END_REPEAT()   .endr
 Mark the end of the statements to be repeated. More...
 
#define SET_LOC(offset)   .org offset
 Set the location counter to offset. More...
 
#define END_FILE()
 Mark the end of the file. More...
 
Data Objects
#define FILL_BYTES(count)   .fill count
 Allocate space for count bytes. More...
 
Symbol Definition
#define EXTERN_SYMBOL(name)
 Declare name as an external symbol referenced by this file. More...
 
#define FUNCTION(name)   gas_begin_func name 0
 Define a file-local function called name. More...
 
#define PUBLIC_FUNCTION(name)   gas_begin_func name 1
 Define a globally visible function called name. More...
 
#define WEAK_FUNCTION(name)   gas_weak_function name
 Define a weak function called name. More...
 
#define WEAK_FUNCTION_ALIAS(name, strong_name)    gas_weak_function_alias name strong_name
 Define name as a weak alias for the function strong_name. More...
 
#define END_FUNC(name)    .size name, . - name
 Mark the end of the function called name. More...
 
Section Definition
#define TEXT_SECTION(name)    .section name, "ax", @progbits
 Start a new section containing executable code. More...
 
#define RODATA_SECTION(name)    .section name, "a", @progbits
 Start a new section containing read-only data. More...
 
#define DATA_SECTION(name)    .section name, "aw", @progbits
 Start a new section containing writeable initialized data. More...
 
#define BSS_SECTION(name)    .section name, "aw", @nobits
 Start a new section containing writeable zero-initialized data. More...
 

Variables

macro ld_addr
 
macro reg
 
macro sym lda w sym endm macro gas_begin_func name
 
macro sym lda w sym endm macro gas_begin_func is_public if is_public global name endif section text ax
 
macro sym lda w sym endm macro gas_begin_func is_public if is_public global name endif section text progbits type function is_public
 
macro sym lda w sym endm macro gas_begin_func is_public if is_public global name endif section text progbits type function segment if is_public global name endif section segment
 

Detailed Description

Assembler abstraction layer: GNU Assembler specifics.

Copyright (c) 2009-2018 Microchip Technology Inc. and its subsidiaries.

\asf_license_start

Definition in file gas.h.