8-4
EPSOn
S5U1C17001C ManUal
(C COMPilEr PaCkagE fOr S1C17 faMily) (Ver. 1.5.0)
8 aSSEMBlEr
8.4 Scope
Symbols defined in each source file can freely be referred to within that file. Such reference range of symbols is
termed scope.
Usually, reference can be made only within a defined file. If a symbol that does not exist in that file is referenced,
the
as
assembler creates the object file assuming that the symbol is an undefined symbol, leaving the problem to be
solved by the
ld
linker.
If your development project requires the use of multiple source files, it is necessary for the scope to be extended to
cover other source files. The
as
assembler has the pseudo-instructions that can be used for this purpose.
Symbols that can be referenced in only the file where they are defined are called "local symbols". Symbols that
are declared to be global are called "global symbols". Local symbols – even when symbols of the same name
are specified in two or more different files – are handled as different symbols. Global symbols – if defined as
overlapping in multiple files – cause a warning to be generated in the
ld
linker.
Example:
file1
: file in which global symbol is defined
.global SYMBOL
...Global declaration of symbols that are to be defined in this file.
.global VAR1
SYMBOL:
:
:
LABEL:
...Local symbol
:
(Can be referred to only in this file)
.section .bss
.align 2
VAR1:
.zero 4
file2
: file in which a global symbol is referred
xcall SYMBOL
...Symbol externally referred
:
xld.a %r1,VAR1
...Symbol externally referred
LABEL:
...Local symbol
:
(Treated as a different symbol from
LABEL
of file1)
The
as
assembler regards the symbols
SYMBOL
and
VAR1
in the file2 as those of undefined addresses in the
assembling, and includes that information in the object file it delivers. Those addresses are finally determined by
the processing of the
ld
linker.
Содержание S5U1C17001C
Страница 6: ......
Страница 17: ...1 General S5U1C17001C Manual 1 General ...
Страница 18: ......
Страница 21: ...1 2 Install S5U1C17001C Manual 2 Installation ...
Страница 22: ......
Страница 29: ...3 SoftDev S5U1C17001C Manual 3 Software Development Procedures ...
Страница 30: ......
Страница 103: ...4 SrcFiles S5U1C17001C Manual 4 Source files ...
Страница 104: ......
Страница 121: ...5 IDE S5U1C17001C Manual 5 gnU17 iDE ...
Страница 122: ......
Страница 365: ...6 Compiler S5U1C17001C Manual 6 C Compiler ...
Страница 366: ......
Страница 385: ...7 Library S5U1C17001C Manual 7 library ...
Страница 386: ......
Страница 404: ...7 18 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 7 liBrary THIS PAGE IS BLANK ...
Страница 405: ...8 Assemblr S5U1C17001C Manual 8 assembler ...
Страница 406: ......
Страница 438: ...8 32 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 8 aSSEMBlEr THIS PAGE IS BLANK ...
Страница 439: ...9 Linker S5U1C17001C Manual 9 linker ...
Страница 440: ......
Страница 448: ...9 8 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 9 linkEr THIS PAGE IS BLANK ...
Страница 449: ...10 Debugger S5U1C17001C Manual 10 Debugger ...
Страница 450: ......
Страница 625: ...10 174 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 10 DEBUggEr THIS PAGE IS BLANK ...
Страница 626: ...11 Tools S5U1C17001C Manual 11 Other Tools ...
Страница 627: ......
Страница 695: ...11 68 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 11 OTHEr TOOlS THIS PAGE IS BLANK ...
Страница 696: ...S1C17 Family C Compiler Package Quick Reference Reference ...