From 4cb7047f0fa000c83ca5592d9a64a2cbc96d8fdc Mon Sep 17 00:00:00 2001 From: Michael Matz Date: Thu, 4 Aug 2016 04:47:03 +0200 Subject: x86-64-asm: Support high registers %r8 - %r15 This requires correctly handling the REX prefix. As bonus we now also support the four 8bit registers spl,bpl,sil,dil, which are decoded as ah,ch,dh,bh in non-long-mode (and require a REX prefix as well). --- i386-tok.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'i386-tok.h') diff --git a/i386-tok.h b/i386-tok.h index cf65897..8c25af0 100644 --- a/i386-tok.h +++ b/i386-tok.h @@ -93,6 +93,14 @@ DEF_ASM(st) DEF_ASM(rip) +#ifdef TCC_TARGET_X86_64 + /* The four low parts of sp/bp/si/di that exist only on + x86-64 (encoding aliased to ah,ch,dh,dh when not using REX). */ + DEF_ASM(spl) + DEF_ASM(bpl) + DEF_ASM(sil) + DEF_ASM(dil) +#endif /* generic two operands */ DEF_BWLX(mov) -- cgit v1.3.1