initial eax value on x86

Joel Sherrill joel.sherrill at OARcorp.com
Sat Aug 13 08:05:58 CDT 2011


Eax is normally a scratch register. What is this code in? Are you jumping into the middle of something?

--joel

Chris Johns <chrisj at rtems.org> wrote:

>On 12/08/11 2:06 AM, Philipp Eppelt wrote:
>> Hello RTEMS-User,
>>
>> I am a student at Dresden University of Technology and I am currently
>> working on a student project with the goal to get RTEMS working on L4
>> with the help of the L4-vCPU interface.
>>
>> I have a simple HelloWorld and compiled it for i386+pc586. I load the
>> hello.exe elf into my program, set the IP to the entry_point, zeroed the
>> area between filesize and memsize and set the SP to the end of that area.
>> So far it works. But I get a PageFault on 100018, which is the asm
>> instruction:
>> 00100018 cmp (%eax),%dh
>>
>
>Which file in RTEMS is this instruction from ?
>
>> So after the entry point 10000c there is only one instruction touching eax:
>> 00100010 dec %eax
>>
>> Initially %eax is 0, then its -1.
>> This is quite confusing and I couldn't find any hint in the start.S or
>> bootcard.c if eax has to be initialized with a special value.
>>
>> Or did I completely miss something?
>>
>
>The PC BSP assumes a boot loader. There may be some register protocol 
>between the boot loader and the start up code.
>
>Chris
>_______________________________________________
>rtems-users mailing list
>rtems-users at rtems.org
>http://www.rtems.org/mailman/listinfo/rtems-users




More information about the rtems-users mailing list