2017년 11월 19일 일요일

Compiler 관련

Compiler: LX51

Segment
Prefix
Memory
Class
Description
?BA?DATABit-addressable data in internal data memory
?BI?BITBit data in internal data memory
?CO?CONSTConstant data in program memory
?DT?DATADATA memory
?FC?HCONSTFar constant data in program memory
?FD?HDATAHDATA memory for far variables
?ID?IDATAIDATA memory
?PD?XDATAPaged data in XDATA memory
?PR?CODEExecutable program code
?PR?ECODEExecutable program code in far memory
?XD?XDATAXDATA memory

Example
    - PDATA (first 256 bytes of XDATA)
    - Link

.m51 file

ACTIVE MEMORY CLASSES OF MODULE:  SERDES_CTL_SW_NIOCAM_RELIABILITY_UART_PROGRAM_171114.OMF.CRBUILD (EXTINT)

BASE        START       END         USED      MEMORY CLASS
LX51 LINKER/LOCATER V4.66.30.0                         11/20/2017  10:47:23  PAGE 2
==========================================================
C:000000H   C:000000H   C:003FFEH   00111CH   CODE
C:000000H   C:000000H   C:003FFEH   000E3CH   CONST
C:000000H   C:000000H   C:003FFEH             ECODE

B00:0000H   C:000000H   C:003FFEH             HCONST

X:000000H   X:000000H   X:0007FFH   0000C1H   XDATA
X:000000H   X:000000H   X:0007FFH             HDATA

I:000020H.0 I:000020H.0 I:00002FH.7 000000H.5 BIT
I:000000H   I:000000H   I:00007FH   000032H   DATA
I:000000H   I:000000H   I:0000FFH   000001H   IDATA

CODE: 111C hex를 사용 4380 byte
CONST: E3C hex를 사용 3644 byte
XDATA: C1 hex 를 사용 193 byte

XDATA는 내가 직접 선언해서 쓸 수 있다(directly)

그 외의
DATA 는 모두 Internal DATA(Internal RAM) 으로 각 심볼마다 어떤 
메모리를 사용했는지 알 수 있다.

댓글 없음:

댓글 쓰기