Grammar Of C Source; Compiler Implementation Definition - Epson S5U1C17001C Manual

Cmos 16-bit single chip microcomputer, c compiler package for s1c17 family
Hide thumbs Also See for S5U1C17001C:
Table of Contents

Advertisement

return address
This is the return address to the caller function.
register save area
If any registers from %r4 to %r7 are used by the caller function, they are saved to this area.
If none of the registers from %r4 to %r7 is used by the caller function, this area is not allocated.
local variable area
If there are any local variables defined in the called function that cannot be stored in registers, an area is
allocated in the stack frame. Then they are saved sequentially beginning with the last-declared variable at
boundary addresses according to the data types.
Example: {
char
short
long
}
Low memory
Depending on the source codes, the variables may not be located in the order of declarations due to
optimization.
This area is not allocated if there is no local variable that needs to be saved in the stack.

6.4.6 grammar of C Source

Refer to Section 4.2, "Grammar of C Source", for data type, library functions and header files, in-line assemble, and
prototype declarations (declaring interrupt handler functions).

6.4.7 Compiler implementation Definition

C language specifications permit implementation-defined adjustment of the method of configuring member variables
of a structure or union.
The C compiler in this package is adjusted to yield even-number bytes for the size of a structure or union as an
implementation definition feature.
S5U1C17001C ManUal
(C COMPilEr PaCkagE fOr S1C17 faMily) (Ver. 1.5.0)
cData;
sData;
lData;
:
+4
Local start
+0
cData
+0
Figure 6.4.5.2 Example of local variables saved to stack
EPSOn
lData
Unused
sData
+1
+2
+3
6 C COMPilEr
6
Compiler
6-13

Advertisement

Table of Contents
loading

Table of Contents