Strange characters in System.map file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all ,


we are using gcc 4.4.1 and build cross tool chain with binutils 2.19.51.

I am building 2.6.30 kernel for ARM. It build and run well on my
target, but i am seeing some strange char in
System.map file

. .

c0064434 T NvRmPrivDfsDeinit
c0064540 t DfsIsr
c0064cf8 t T.285
c0064d3c t T.288
c0064f2c T NvRmDfsSetState
c0064ff0 t T.289
c0065078 T NvRmPrivDfsInit
c006607c t T.291                                        <<<Example
c00661c8 T NvRmPrivDvsInit

I found that c0064cf8 t T.285 function are small function which are
declared as static void

. . .
 For example :  The below static function  will not be there if we see
assembly code of the obj file.


static void DvsChangeCpuVoltage( NvRmDeviceHandle hRm,NvRmDvs* pDvs,
NvRmMilliVolts TargetMv)

{

NV_ASSERT(TargetMv >= pDvs->MinCpuMv);

NV_ASSERT(TargetMv <= pDvs->NominalCpuMv);

if (pDvs->CurrentCpuMv != TargetMv)

{

NvRmPmuSetVoltage(hRm, pDvs->CpuRailAddress, TargetMv, NULL);

pDvs->CurrentCpuMv = TargetMv;

}

}



instead it will be look like as  shown below.


0000205c <T.286>:
   205c:       e1a0c00d        mov     ip, sp
   2060:       e92dd878        push    {r3, r4, r5, r6, fp, ip, lr, pc}
   2064:       e24cb004        sub     fp, ip, #4      ; 0x4
   2068:       e3004000        movw    r4, #0  ; 0x0
   206c:       e301670c        movw    r6, #5900       ; 0x170c
   2070:       e3404000        movt    r4, #0  ; 0x0
   2074:       e1a05001        mov     r5, r1
   2078:       e7943006        ldr     r3, [r4, r6]
   207c:       e1530001        cmp     r3, r1
   2080:       089da878        ldmeq   sp, {r3, r4, r5, r6, fp, sp, pc}
   2084:       e3012708        movw    r2, #5896       ; 0x1708
   2088:       e3a03000        mov     r3, #0  ; 0x0
   208c:       e7941002        ldr     r1, [r4, r2]
   2090:       e1a02005        mov     r2, r5
   2094:       ebfffffe        bl      0 <NvRmPmuSetVoltage>
   2098:       e7845006        str     r5, [r4, r6]
   209c:       e89da878        ldm     sp, {r3, r4, r5, r6, fp, sp, pc}



If i build kernel with O1 or O0 flag, these strange character
disappear. also i check on GCC 4.3.3 there is no problem .

Is there some flag to disable these strange characters ?

kind regards
Naveen


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux