Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/Makefile.inc

    r95e370f8 r1f5c9c96  
    3030BFD_ARCH = i386:x86-64
    3131BFD = binary
     32CLANG_ARCH = x86_64
    3233
    3334FPU_NO_CFLAGS = -mno-sse -mno-sse2
    34 CMN1 = -m64 -mcmodel=large -mno-red-zone -fno-unwind-tables -fno-omit-frame-pointer
     35
     36#
     37# FIXME:
     38#
     39# The -fno-optimize-sibling-calls should be removed as soon as a bug
     40# in GCC concerning the "large" memory model and tail call optimization
     41# is fixed.
     42#
     43# When GCC generates a code for tail call, instead of generating ..
     44#
     45#   jmp *fnc
     46#
     47# it generates an assembly code with an illegal immediate prefix:
     48#
     49#   jmp *$fnc
     50#
     51# See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48385 for reference.
     52#
     53
     54CMN1 = -m64 -mcmodel=large -mno-red-zone -fno-unwind-tables -fno-omit-frame-pointer -fno-optimize-sibling-calls
    3555GCC_CFLAGS += $(CMN1)
    3656ICC_CFLAGS += $(CMN1)
    37 CLANG_CFLAGS += $(CMN1)
     57SUNCC_CFLAGS += -m64 -xmodel=kernel
    3858
    3959BITS = 64
     
    4767        GCC_CFLAGS += $(CMN2)
    4868        ICC_CFLAGS += $(CMN2)
     69        SUNCC_CFLAGS += -xtarget=opteron
    4970endif
    5071
     
    6586        arch/$(KARCH)/src/bios/bios.c \
    6687        arch/$(KARCH)/src/interrupt.c \
    67         arch/$(KARCH)/src/mm/km.c \
    6888        arch/$(KARCH)/src/mm/as.c \
    6989        arch/$(KARCH)/src/mm/frame.c \
     
    7696        arch/$(KARCH)/src/proc/thread.c \
    7797        arch/$(KARCH)/src/userspace.c \
    78         arch/$(KARCH)/src/syscall.c
     98        arch/$(KARCH)/src/syscall.c \
     99        arch/$(KARCH)/src/debugger.c
    79100
    80101ifeq ($(CONFIG_SMP),y)
Note: See TracChangeset for help on using the changeset viewer.