x86-64: make pda's cpunumber and nodenumber unsigned

This generally allows better code to be generated, since the zero-
extension during 32-bit operations comes for free (needed when the
result is used as array index or similar), whereas sign extension must
be done explicitly and frequently requires a one byte larger
instruction due to the necessary rex64 prefix.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Jan Beulich 2008-01-30 13:31:21 +01:00 committed by Ingo Molnar
parent bdb4f15606
commit d88879b2d0

View File

@ -15,14 +15,14 @@ struct x8664_pda {
unsigned long kernelstack; /* 16 top of kernel stack for current */ unsigned long kernelstack; /* 16 top of kernel stack for current */
unsigned long oldrsp; /* 24 user rsp for system call */ unsigned long oldrsp; /* 24 user rsp for system call */
int irqcount; /* 32 Irq nesting counter. Starts with -1 */ int irqcount; /* 32 Irq nesting counter. Starts with -1 */
int cpunumber; /* 36 Logical CPU number */ unsigned int cpunumber; /* 36 Logical CPU number */
#ifdef CONFIG_CC_STACKPROTECTOR #ifdef CONFIG_CC_STACKPROTECTOR
unsigned long stack_canary; /* 40 stack canary value */ unsigned long stack_canary; /* 40 stack canary value */
/* gcc-ABI: this canary MUST be at /* gcc-ABI: this canary MUST be at
offset 40!!! */ offset 40!!! */
#endif #endif
char *irqstackptr; char *irqstackptr;
int nodenumber; /* number of current node */ unsigned int nodenumber; /* number of current node */
unsigned int __softirq_pending; unsigned int __softirq_pending;
unsigned int __nmi_count; /* number of NMI on this CPUs */ unsigned int __nmi_count; /* number of NMI on this CPUs */
short mmu_state; short mmu_state;