On Jul 29, 2014, at 5:32 AM, Varad Gautam <varadgau...@gmail.com> wrote:
> On Tue, Jul 29, 2014 at 3:34 PM, Olivier Martin <olivier.mar...@arm.com>
> wrote:
> > $
> > /work/gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux/bin/arm-linux-gnueabihf-objdump
> > -S -D
> > Build/BeagleBoard/DEBUG_GCC48/ARM/ArmPlatformPkg/PrePi/PeiUniCore/DEBUG/ArmPlatformPrePiUniCore.dll
> >
> >
> >
> > FdTop = (EFI_PHYSICAL_ADDRESS)PcdGet32(PcdFdBaseAddress) +
> > (EFI_PHYSICAL_ADDRESS)PcdGet32(PcdFdSize);
> >
> > 705c: 4b90 ldr r3, [pc, #576] ;
> > (72a0 <MemoryPeim+0x2a4>)
> >
> > 705e: 681b ldr r3, [r3, #0]
> >
> > 7060: 4618 mov r0, r3
> >
> > 7062: f04f 0100 mov.w r1, #0
> >
> > 7066: 4b8f ldr r3, [pc, #572] ; (72a4
> > <MemoryPeim+0x2a8>)
> >
> > 7068: 681b ldr r3, [r3, #0]
> >
> > 706a: 461a mov r2, r3
> >
> > 706c: f04f 0300 mov.w r3, #0
> >
> > (...)
> >
> > 72a0: 0000b4ec andeq fp, r0, ip, ror #9
> >
> > 72a4: 0000b4f0 strdeq fp, [r0], -r0
> >
> > (...)
> >
> > 0000b4ec <_gPcd_FixedAtBuild_PcdFdBaseAddress>:
> >
> > b4ec: 80008000 andhi r8, r0, r0
> >
> > 0000b4f0 <_gPcd_FixedAtBuild_PcdFdSize>:
> >
> > b4f0: 000b0000 andeq r0, fp, r0
> >
> > I noticed in an earlier email you mentioned ArmPlatformPrePiUniCore.lib. If
> > you want to look at the final ELF file, you should have a look at ‘.dll’. I
> > know the name is confusing... But ‘.dll’ is actually a ELF file!
>
> Thanks Olivier! The '.dll' dump looks similar to ^ and contains proper PCD
> values
> at the right address. The '.lib' however shows all the PCDs to be at 00000000:
>
> Disassembly of section .rodata._gPcd_FixedAtBuild_PcdFvBaseAddress:
>
> 00000000 <_gPcd_FixedAtBuild_PcdFvBaseAddress>:
> 0: 80008000 andhi r8, r0, r0
>
> Is it all right that these two addresses are different?
Yes if the global was an extern then the library (set of object files) would
contain an object relocation entry to let the linker know what filial value
ends up at this address.
Note: The object relocations are not the same set as the image relocations that
the EFI code supports in the PE/COFF libraries. The image relocations only have
to fixup addresses, but object relocations also need to resolve external
references.
https://svn.code.sf.net/p/edk2/code/trunk/edk2/MdePkg/Library/BasePeCoffLib/
Thanks,
Andrew Fish
> If so, what else sould I check
> to trace the fault?
>
> Thanks,
> Varad
> ------------------------------------------------------------------------------
> Infragistics Professional
> Build stunning WinForms apps today!
> Reboot your WinForms applications with our WinForms controls.
> Build a bridge from your legacy apps to the future.
> http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk_______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel