[PATCH] x86-64/asm: use negative immediates for stack adjustments

From: Jan Beulich
Date: Mon Jun 01 2015 - 08:03:12 EST


Doing so allows adjustments by 128 bytes (occurring for
REMOVE_PT_GPREGS_FROM_STACK 8 uses) to be expressed with a single byte
immediate.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
---
arch/x86/include/asm/calling.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--- 4.1-rc6/arch/x86/include/asm/calling.h
+++ 4.1-rc6-x86_64-invert-stack-adjust/arch/x86/include/asm/calling.h
@@ -91,7 +91,7 @@ For 32-bit we have the following convent
#define SIZEOF_PTREGS 21*8

.macro ALLOC_PT_GPREGS_ON_STACK addskip=0
- subq $15*8+\addskip, %rsp
+ addq $-(15*8+\addskip), %rsp
CFI_ADJUST_CFA_OFFSET 15*8+\addskip
.endm

@@ -204,7 +204,7 @@ For 32-bit we have the following convent
.endm

.macro REMOVE_PT_GPREGS_FROM_STACK addskip=0
- addq $15*8+\addskip, %rsp
+ subq $-(15*8+\addskip), %rsp
CFI_ADJUST_CFA_OFFSET -(15*8+\addskip)
.endm




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/