aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/x86_64
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2012-09-26 11:48:21 +0200
committerJan Beulich <jbeulich@suse.com>2012-09-26 11:48:21 +0200
commitf430ebef51f16767ec5e127131cdb3115aa1ae1b (patch)
treec8b773123e62b3066cf0b157c0f86dfc2eba456a /xen/include/asm-x86/x86_64
parentd9de3dbee34504651572b07d90950902a47b7919 (diff)
downloadxen-f430ebef51f16767ec5e127131cdb3115aa1ae1b.tar.gz
xen-f430ebef51f16767ec5e127131cdb3115aa1ae1b.tar.bz2
xen-f430ebef51f16767ec5e127131cdb3115aa1ae1b.zip
x86: enhance rsp-relative calculations
The use of "or" in GET_CPUINFO_FIELD so far wasn't ideal, as it doesn't lend itself to folding this operation with a possibly subsequent one (e.g. the well known mov+add=lea conversion). Split out the sub- operations, and shorten assembly code slightly with this. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/include/asm-x86/x86_64')
-rw-r--r--xen/include/asm-x86/x86_64/asm_defns.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/xen/include/asm-x86/x86_64/asm_defns.h b/xen/include/asm-x86/x86_64/asm_defns.h
index d8e87ebe63..6278446dc2 100644
--- a/xen/include/asm-x86/x86_64/asm_defns.h
+++ b/xen/include/asm-x86/x86_64/asm_defns.h
@@ -111,14 +111,6 @@ STR(IRQ) #nr "_interrupt:\n\t" \
"movl $"#nr",4(%rsp)\n\t" \
"jmp common_interrupt");
-#define GET_CPUINFO_FIELD(field,reg) \
- movq $~(STACK_SIZE-1),reg; \
- andq %rsp,reg; \
- orq $(STACK_SIZE-CPUINFO_sizeof+field),reg;
-#define GET_CURRENT(reg) \
- GET_CPUINFO_FIELD(CPUINFO_current_vcpu,reg) \
- movq (reg),reg;
-
#ifdef __ASSEMBLY__
# define _ASM_EX(p) p-.
#else