[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] lcall invalid hex code
From: |
Sergey Korshunoff |
Subject: |
Re: [Tinycc-devel] lcall invalid hex code |
Date: |
Tue, 3 May 2016 06:03:55 +0300 |
> Fixed in mob, plus some more asm bugs (32 and 64 bit).
ALT(DEF_ASM_OP1(lcall, 0xff, 3, OPC_MODRM, OPT_EA)) 1) or
ALT(DEF_ASM_OP1(lcall, 0xff, 3, OPC_MODRM, OPT_INDIR)) 2) ?
A test code:
static unsigned long bios32_service(unsigned long service)
{
int return_code;
__asm__("lcall *(%%edi); cld"
: "=a" (return_code)
: "0" (service),
"D" (&bios32_indirect));
__asm__("lcall (%%edi); cld"
: "=a" (return_code)
: "0" (service),
"D" (&bios32_indirect));
}
gcc/as prints warning for second case (indirect call w/o *). tcc with
1) accept all cases 2) don't accept second case (error:).
I looked at the "call" opcode 0xff modifiers
ALT(DEF_ASM_OP1(call, 0xff, 2, OPC_MODRM, OPT_INDIR))
- [Tinycc-devel] lcall invalid hex code, Sergey Korshunoff, 2016/05/01
- Re: [Tinycc-devel] lcall invalid hex code, David Mertens, 2016/05/01
- Re: [Tinycc-devel] lcall invalid hex code, Sergey Korshunoff, 2016/05/01
- Re: [Tinycc-devel] lcall invalid hex code, Sergey Korshunoff, 2016/05/01
- Re: [Tinycc-devel] lcall invalid hex code, Michael Matz, 2016/05/01
- Re: [Tinycc-devel] lcall invalid hex code, Sergey Korshunoff, 2016/05/02
- Re: [Tinycc-devel] lcall invalid hex code, Sergey Korshunoff, 2016/05/02
- Re: [Tinycc-devel] lcall invalid hex code, Michael Matz, 2016/05/02
- Re: [Tinycc-devel] lcall invalid hex code, Michael Matz, 2016/05/02
- Re: [Tinycc-devel] lcall invalid hex code, Michael Matz, 2016/05/02
- Re: [Tinycc-devel] lcall invalid hex code,
Sergey Korshunoff <=
- Re: [Tinycc-devel] lcall invalid hex code, Michael Matz, 2016/05/02
Re: [Tinycc-devel] lcall invalid hex code, Michael Matz, 2016/05/01