Download MSP430 Optimizing C/C++ Compiler User`s Guide

Transcript
Sample Usage of the C++ Name Demangler
www.ti.com
Example 8‑2. Resulting Assembly for calories_in_a_banana
PUSH.W
SUB.W
MOV.W
CALL
r10
#2,SP
SP,r12
#_ZN6bananaC1Ev
MOV.W
CALL
SP,r12
#_ZN6banana8caloriesEv
MOV.W
MOV.W
CALL
r12,r10
SP,r12
#_ZN6bananaD1Ev
MOV.W
ADD.W
POP
RET
r10,r12
#2,SP
r10
Executing the C++ name demangler demangles all names that it believes to be mangled. Enter:
dem430 calories_in_a_banana.asm
The result is shown in Example 8-3. The linknames in Example 8-2 ___ct__6bananaFv,
_calories__6bananaFv, and ___dt__6bananaFv are demangled.
Example 8‑3. Result After Running the C++ Name Demangler
calories_in_a_banana():
;* ----------------------------------------------------------------------------*
PUSH.W
r10
SUB.W
#2,SP
MOV.W
SP,r12
CALL
#banana::banana()
164
MOV.W
CALL
SP,r12
#banana::calories()
MOV.W
MOV.W
CALL
r12,r10
SP,r12
#banana::~banana()
MOV.W
ADD.W
POP
RET
r10,r12
#2,SP
r10
C++ Name Demangler
SLAU132K – September 2015
Submit Documentation Feedback
Copyright © 2015, Texas Instruments Incorporated