test_main (void)
{
asm volatile ("movl $0xbffffffc, %%esp; movl %0, (%%esp); int $0x30"
- :: "i" (SYS_EXIT));
+ : : "i" (SYS_EXIT));
fail ("should have called exit(-1)");
}
p[1] = 67;
/* Invoke the system call. */
- asm volatile ("movl %0, %%esp; int $0x30" :: "g" (p));
+ asm volatile ("movl %0, %%esp; int $0x30" : : "g" (p));
fail ("should have called exit(67)");
}
p[1] = 42;
/* Invoke the system call. */
- asm volatile ("movl %0, %%esp; int $0x30" :: "g" (p));
+ asm volatile ("movl %0, %%esp; int $0x30" : : "g" (p));
fail ("should have called exit(42)");
}
"andl $0xfffff000, %%esp;" /* Move stack pointer to bottom of page. */
"pushal;" /* Push 32 bytes on stack at once. */
"movl %%eax, %%esp" /* Restore copied stack pointer. */
- ::: "eax"); /* Tell GCC we destroyed eax. */
+ : : : "eax"); /* Tell GCC we destroyed eax. */
}
new page tables immediately. See [IA32-v2a] "MOV--Move
to/from Control Registers" and [IA32-v3a] 3.7.5 "Base Address
of the Page Directory". */
- asm volatile ("movl %0, %%cr3" :: "r" (vtop (base_page_dir)));
+ asm volatile ("movl %0, %%cr3" : : "r" (vtop (base_page_dir)));
}
/* Breaks the kernel command line into words and returns them as
See [IA32-v2a] "LIDT" and [IA32-v3a] 5.10 "Interrupt
Descriptor Table (IDT)". */
idtr_operand = make_idtr_operand (sizeof idt - 1, idt);
- asm volatile ("lidt %0" :: "m" (idtr_operand));
+ asm volatile ("lidt %0" : : "m" (idtr_operand));
/* Initialize intr_names. */
for (i = 0; i < INTR_CNT; i++)
Table Register (GDTR)", 2.4.4 "Task Register (TR)", and
6.2.4 "Task Register". */
gdtr_operand = make_gdtr_operand (sizeof gdt - 1, gdt);
- asm volatile ("lgdt %0" :: "m" (gdtr_operand));
- asm volatile ("ltr %w0" :: "r" (SEL_TSS));
+ asm volatile ("lgdt %0" : : "m" (gdtr_operand));
+ asm volatile ("ltr %w0" : : "r" (SEL_TSS));
}
\f
/* System segment or code/data segment? */