Friendly with GCC > 4.1
authorBarret Rhoden <brho@cs.berkeley.edu>
Wed, 25 Feb 2009 01:17:12 +0000 (17:17 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Wed, 25 Feb 2009 01:17:12 +0000 (17:17 -0800)
GNUmakefile
kern/init.c
kern/pmap.c

index 39a2780..be7a4ba 100644 (file)
@@ -70,7 +70,7 @@ PERL  := perl
 # Compiler flags
 # -fno-builtin is required to avoid refs to undefined functions in the kernel.
 # Only optimize to -O1 to discourage inlining, which complicates backtraces.
-CFLAGS := $(CFLAGS) $(DEFS) $(LABDEFS) -O -fno-builtin -I$(TOP) -MD -Wall -Wno-format -Wno-unused -gstabs
+CFLAGS := $(CFLAGS) $(DEFS) $(LABDEFS) -O -fno-builtin -fno-stack-protector -I$(TOP) -MD -Wall -Wno-format -Wno-unused -gstabs
 
 # Linker flags for JOS user programs
 ULDFLAGS := -T user/user.ld
index 2abdd67..d574db2 100644 (file)
@@ -109,11 +109,11 @@ void print_cpuinfo(void) {
        int func_num;
        char vendor_id[13];
 
-       asm volatile ("subl    %0, %0;
-                   cpuid;
-                   movl    %%ebx, (%1);
-                   movl    %%edx, 4(%1);
-                   movl    %%ecx, 8(%1)"
+       asm volatile ("subl    %0, %0;"
+                  "cpuid;"
+                  "movl    %%ebx, (%1);"
+                  "movl    %%edx, 4(%1);"
+                  "movl    %%ecx, 8(%1);"
                      : "=a"(func_num) 
                                  : "D"(vendor_id)
                      : "%ebx", "%ecx", "%edx");
index 2e2dd5a..0c36b40 100644 (file)
@@ -246,9 +246,9 @@ i386_vm_init(void)
        bool pse;
 
        // check for PSE support
-       asm volatile ("movl    $1, %%eax;
-                   cpuid;
-                   andl    $0x00000008, %%edx"
+       asm volatile ("movl    $1, %%eax;"
+                  "cpuid;"
+                  "andl    $0x00000008, %%edx;"
                      : "=d"(pse) 
                                  : 
                      : "%eax");