summaryrefslogtreecommitdiffstats
path: root/sys/conf/kern.mk
Commit message (Collapse)AuthorAgeFilesLines
* Bump down the inline limit on MIPS.imp2009-03-031-1/+1
|
* Explicitly disable generation of Altivec instructions in the kernel on PowerPC,nwhitehorn2009-02-221-1/+2
| | | | and add support to allow users to set their CPUTYPE in make.conf.
* Disable SSP for mips until support is added to the base architecture.imp2008-07-231-1/+1
|
* Disable SSP for the kernel on arm as well (see rev 180605).cognet2008-07-221-1/+2
| | | | | | I overlooked this because a SSP kernel booted for me. Apologises to: ticso
* Enable GCC stack protection (aka Propolice) for userland:ru2008-06-251-0/+7
| | | | | | | | | | | | | | | | | | | | | - It is opt-out for now so as to give it maximum testing, but it may be turned opt-in for stable branches depending on the consensus. You can turn it off with WITHOUT_SSP. - WITHOUT_SSP was previously used to disable the build of GNU libssp. It is harmless to steal the knob as SSP symbols have been provided by libc for a long time, GNU libssp should not have been much used. - SSP is disabled in a few corners such as system bootstrap programs (sys/boot), process bootstrap code (rtld, csu) and SSP symbols themselves. - It should be safe to use -fstack-protector-all to build world, however libc will be automatically downgraded to -fstack-protector because it breaks rtld otherwise. - This option is unavailable on ia64. Enable GCC stack protection (aka Propolice) for kernel: - It is opt-out for now so as to give it maximum testing. - Do not compile your kernel with -fstack-protector-all, it won't work. Submitted by: Jeremie Le Hen <jeremie@le-hen.org>
* Add -mno-sse3 for amd64 case tooache2008-05-101-1/+1
| | | | | PR: 123518 Submitted by: Marc Olzheim <marcolz@stack.nl>
* Define INLINE_LIMIT and additional CFLAGS for mips.gonzo2008-04-291-0/+9
| | | | Approved by: cognet (mentor)
* Temporarily add 'WITH_GCC3' that removes -Wno-pointer-sign from theobrien2007-05-241-1/+4
| | | | | | | compiler invocation. This is just to help get over the hump of people tracking down bugs that may cross the GCC 4.2 upgrade. It is envisioned that this option goes away after a suitable amount of time.
* Add -Wno-pointer-sign to CWARNFLAGS.kan2007-05-191-2/+2
| | | | | | Switch ia64 kernels to -fpic. This is likely wrong, but at least gets ia64 kernels to compile and link with GCC 4.2. The previous -mno-sdata trick is not working anymore.
* Fix module loading for sparc on machines with greater than 1GB of RAMkmacy2006-11-261-1/+1
| | | | | | | | | | | | | t1# uname -m sparc64 t1# sysctl hw.physmem hw.physmem: 17150509056 t1# kldload reiserfs t1# kldstat Id Refs Address Size Name 1 3 0xc0000000 58cc38 kernel 2 1 0xcbe70000 234000 xfs.ko 3 1 0xcc0b6000 110000 reiserfs.ko
* Create new dialect knob, as setting the language dialect isn't a warning flag.obrien2006-06-291-1/+1
|
* Enable -Wundef warnings for kernel/module compiles. From cpp.info:ru2006-05-301-1/+4
| | | | | | | `-Wundef' Warn whenever an identifier which is not a macro is encountered in an `#if' directive, outside of `defined'. Such identifiers are replaced with zero.
* First pass at removing Alpha kernel support.jhb2006-05-111-10/+0
|
* Add -mno-sse3 for prescott/noconaache2005-07-151-1/+1
|
* Since the question keeps coming up, explain why the -mno-sse etc switchespeter2005-03-311-2/+6
| | | | are there and that it does not have an effect on user applications.
* Remove OBE comment about AMD64 memory model.obrien2005-03-151-2/+1
|
* Ensure GCC does not use FP registers in integer code.obrien2005-03-151-1/+2
| | | | | | I think all we really need is -fno-sse2. I really don't like cluttering up the compiler invocation, but this bigger hammer will fix reported problems for now.
* Define INLINE_LIMIT for arm.cognet2004-05-141-0/+3
|
* This are the build infrastructure changes to allow to use thetrhodes2004-03-121-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Intel C/C++ compiler (lang/icc) to build the kernel. The icc CPUTYPE CFLAGS use icc v7 syntax, icc v8 moans about them, but doesn't abort. They also produce CPU specific code (new instructions of the CPU, not only CPU specific scheduling), so if you get coredumps with signal 4 (SIGILL, illegal instruction) you've used the wrong CPUTYPE. Incarnations of this patch survive gcc compiles and my make universe. I use it on my desktop. To use it update share/mk, add /usr/local/intel/compiler70/ia32/bin (icc v7, works) or /usr/local/intel_cc_80/bin (icc v8, doesn't work) to your PATH, make sure you have a new kernel compile directory (e.g. MYKERNEL_icc) and run CFLAGS="-O2 -ip" CC=icc make depend CFLAGS="-O2 -ip" CC=icc make in it. Don't compile with -ipo, the build infrastructure uses ld directly to link the kernel and the modules, but -ipo needs the link step to be performed with Intel's linker. Problems with icc v8: - panic: npx0 cannot be emulated on an SMP system - UP: first start of /bin/sh results in a FP exception Parts of this commit contains suggestions or submissions from Marius Strobl <marius@alchemy.franken.de>. Reviewed by: silence on -arch Submitted by: netchild
* Lower i386's INLINE_LIMIT to AMD64's level.obrien2004-03-031-1/+1
|
* Reduce the inline limit from 20000 to 8000 after the previous changespeter2004-02-061-1/+1
| | | | to simplify the curthread expansion some months ago.
* Add PowerPC CFLAGS.obrien2003-12-071-0/+9
| | | | Submitted by: gallatin
* Move the inline limit default variable to a per-arch place. For example,peter2003-11-041-0/+5
| | | | | | | the amd64 implementation of the pcpu macros is even more verbose than on i386 and that causes gcc to way overestimate the complexity of this 2-instruction macro. The other platforms can probably lower their default values.
* Update the kernel compile flags inside the .if ${MACHINE_ARCH} == "amd64"peter2003-05-301-1/+2
| | | | | | | | | section to stop gcc generating the dwarf2 .eh_frame unwind tables. It is dead weight for the time being. Maybe it can be used to perform stack traces and/or get the location of function arguments in ddb, but that requires a dwarf2 runtime interpreter, which we do not have. Approved by: re (amd64 "safe" bits)
* Major pmap rework to take advantage of the larger address space on amd64peter2003-05-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | systems. Of note: - Implement a direct mapped region using 2MB pages. This eliminates the need for temporary mappings when getting ptes. This supports up to 512GB of physical memory for now. This should be enough for a while. - Implement a 4-tier page table system. Most of the infrastructure is there for 128TB of userland virtual address space, but only 512GB is presently enabled due to a mystery bug somewhere. The design of this was heavily inspired by the alpha pmap.c. - The kernel is moved into the negative address space(!). - The kernel has 2GB of KVM available. - Provide a uma memory allocator to use the direct map region to take advantage of the 2MB TLBs. - Fixed some assumptions in the bus_space macros about the ability to fit virtual addresses in an 'int'. Notable missing things: - pmap_growkernel() should be able to grow to 512GB of KVM by expanding downwards below kernbase. The kernel must be at the top 2GB of the negative address space because of gcc code generation strategies. - need to fix the >512GB user vm code. Approved by: re (blanket)
* Use C99 for the kernel.obrien2003-05-031-1/+1
|
* Add AMD64 hookspeter2003-04-301-0/+9
|
* Sync with bsd.kern.mk.jake2003-02-281-0/+9
| | | | Reminded by: bde
* ia64 specific CFLAGS change:marcel2002-10-131-1/+1
| | | | | | | | | | | | Fix the "@gprel relocation against dynamic symbol xxx" linker error. Variables defined in the link unit and small enough to be put in the short data section will have a gp-relative access sequence (using the @gprel relocation). It is invalid to have @gprel relocations in shared libraries, because they are to be resolved by the static linker and not the dynamic linker. The -fpic option will cause @ltoff relocations for @gprel relocations, but the side-effects are untested (if any). Instead, disable/eliminate the short data section to achieve the same.
* Use the -mno-align-long-strings on i386's to debloat the kernel a little.bde2002-10-041-1/+1
| | | | | | This reduces the size of GENERIC's text space by 73999 bytes (about 2%). The bloat is from approximately 3437 strings longer than 31 characters being padded to a 32-byte boundary.
* Bump the -mev56 to -mev6. Otherwise, when you compile with gcc usingpeter2002-09-061-2/+2
| | | | | | | ev6 or pca56 etc this downgrades the cpu specification passed to gas. As a result, gas will fail when gcc generates media instructions (in uipc_usrreq.c). This only affects what gas will accept, not what gcc generates or what our *.s file contain.
* Turned format checking back on. It was left turned off for too long afterbde2002-08-251-7/+1
| | | | | | the gcc lossage that caused it to be turned off was fixed. Tested with: i386/{GENERIC,LINT,...}, alpha/GENERIC
* For now, make the .ifdef GCC3 case default. We should change -Wno-formatpeter2002-05-241-7/+1
| | | | | | back to -fformat-extensions (or whatever) when we have the functionality. We are gaining warnings again that should be fixed but the are being hidden by NO_WERROR and all the -Wformat noise.
* Use -ffreestanding for kernel bits unconditionally.obrien2002-05-041-2/+0
|
* This will have to be revised, but allow putting 'makeoptions GCC3=true'peter2001-09-101-0/+15
| | | | | in a kernel config file. This should minimize the tearing-out-hair process while updating the kernel for gcc-3 compliance.
* revert previous accidental commitassar2001-07-221-1/+5
|
* get rid of some printf and pointer type warningsassar2001-07-221-5/+1
|
* Add section for building ia64 kernels.dfr2000-10-161-0/+8
|
* Reserve register t7 on alpha to point at per-cpu global variables.dfr2000-04-281-1/+2
|
* Fix the grammar in my previous commit "lose" -> "loss".mpp2000-04-241-1/+1
| | | | | | I should have done it that way in the first place. Pointed-out-by: bde
* Fix a typo in the comments.mpp2000-04-231-1/+1
| | | | Submitted by: Allen Campbell <allenc@verinet.com>
* Make "-mpreferred-stack-boundary=2" the default on the i386.obrien1999-11-171-0/+13
| | | | This reduces the size of the kernel and modules when compiled with GCC 2.95.
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Fixed comment and whitespace lossage in recent commits. The -W flagbde1999-01-291-7/+14
| | | | | | is not implied by -Wall as claimed by gcc.1. Adding it causes a measly 7193 new warnings for LINT, mostly for "unused parameter" and "comparison between signed and unsigned".
* Cleanup bsd.kern.mk after last commit.dillon1999-01-291-14/+4
|
* Turn on -Wall and -Wcast-qualdillon1999-01-271-5/+11
|
* Move some compile flags from the kernel makefile to bsd.kern.mk so thatdfr1998-12-171-1/+9
| | | | | | kernel modules are built with the right flags. Suggested by: Andrew Gallatin <gallatin@cs.duke.edu>
* Add -Wunused to kernel build flags.archie1998-12-141-3/+3
| | | | Reviewed by: cvs-committers@freebsd.org
* Turned on -Wformat -fformat-extensions. -fformat-extensions requires abde1998-09-091-3/+4
| | | | | -current version of gcc. Without it, -Wformat would complain about all the nonstandard %[Dbrz] formats in the kernel.
* Added -ansi to CWARNFLAGS so that ANSI errors don't come back.bde1998-05-011-2/+2
|
OpenPOWER on IntegriCloud