875fc28564
with the exception of indirect function calls, are assumed to be intra load module and thus that GP will be the same. This avoids saving, setting and restoring GP for each function call and reduces the kernel with ~320KB. There's obviously a performance benefit as well. Note that since we generally don't know if calls will be intra or inter load module when we're compiling kernel modules, -mconstant-gp cannot be used for modules.
57 lines
927 B
Makefile
57 lines
927 B
Makefile
# Makefile.ia64 -- with config changes.
|
|
# Copyright 1990 W. Jolitz
|
|
# from: src/sys/conf/Makefile.alpha,v 1.76
|
|
# $FreeBSD$
|
|
#
|
|
# Makefile for FreeBSD
|
|
#
|
|
# This makefile is constructed from a machine description:
|
|
# config machineid
|
|
# Most changes should be made in the machine description
|
|
# /sys/ia64/conf/``machineid''
|
|
# after which you should do
|
|
# config machineid
|
|
# Generic makefile changes should be made in
|
|
# /sys/conf/Makefile.ia64
|
|
# after which config should be rerun for all machines.
|
|
#
|
|
|
|
GCC3= you bet
|
|
|
|
# Which version of config(8) is required.
|
|
%VERSREQ= 500011
|
|
|
|
STD8X16FONT?= iso
|
|
|
|
.if !defined(S)
|
|
.if exists(./@/.)
|
|
S= ./@
|
|
.else
|
|
S= ../../..
|
|
.endif
|
|
.endif
|
|
.include "$S/conf/kern.pre.mk"
|
|
|
|
CFLAGS+= -mconstant-gp
|
|
|
|
ASM_CFLAGS= -x assembler-with-cpp -Wa,-x -DLOCORE ${CFLAGS}
|
|
|
|
%BEFORE_DEPEND
|
|
|
|
%OBJS
|
|
|
|
%FILES.c
|
|
|
|
%FILES.s
|
|
|
|
%FILES.m
|
|
|
|
%CLEAN
|
|
|
|
locore.o: $S/$M/$M/locore.s assym.s
|
|
${NORMAL_S}
|
|
|
|
%RULES
|
|
|
|
.include "$S/conf/kern.post.mk"
|