Jens von der Heydt
2005-12-16 21:06:55 UTC
Hi,
I'm currently trying to compile PearPC as a 32bit - binary on SuSE 10.0
but I seem to be having problems with Yasm. I did not install
Nasm since I want to get our Configure-Script to correctly work with
the 64bit environment and Yasm since it will be needed to have a
later jitc_64
and Nasm is dead - by the way.
Yasm is compatible with Nasm code what I had to do was to replace
around 20 lines of assembler that all were PUSHES like this
line from jitc_mmu.asm:
ppc_write_effective_byte_asm:
...
push 8 ; roll back 8 bytes in case of exception
...
Yasm does not like that Syntax, it's something about the Amd64 extension
that they had to change the syntax for.
So one has to write
push byte 8
or
push dword 8
As another thing, of course I had to include "-m32" in CFlags and
CXXFlags.
The Code builds ok but when I start PearPC as soon as JitC starts I
get a
segfault. When I compile the same thing with a (later installed) nasm
(and with changing "push dword 8" back to "push 8") it does compile
and work.
I made sure that Yasm does compile an elf binary and the target
plattform
and arch is x86 (32 bit). Any Ideas what I'm doing wrong here?
Jens
I'm currently trying to compile PearPC as a 32bit - binary on SuSE 10.0
but I seem to be having problems with Yasm. I did not install
Nasm since I want to get our Configure-Script to correctly work with
the 64bit environment and Yasm since it will be needed to have a
later jitc_64
and Nasm is dead - by the way.
Yasm is compatible with Nasm code what I had to do was to replace
around 20 lines of assembler that all were PUSHES like this
line from jitc_mmu.asm:
ppc_write_effective_byte_asm:
...
push 8 ; roll back 8 bytes in case of exception
...
Yasm does not like that Syntax, it's something about the Amd64 extension
that they had to change the syntax for.
So one has to write
push byte 8
or
push dword 8
As another thing, of course I had to include "-m32" in CFlags and
CXXFlags.
The Code builds ok but when I start PearPC as soon as JitC starts I
get a
segfault. When I compile the same thing with a (later installed) nasm
(and with changing "push dword 8" back to "push 8") it does compile
and work.
I made sure that Yasm does compile an elf binary and the target
plattform
and arch is x86 (32 bit). Any Ideas what I'm doing wrong here?
Jens