semi HEADS UP: icc support committed

From: Alexander Leidinger (Alexander_at_Leidinger.net)
Date: 03/13/04

  • Next message: Luigi Rizzo: "Re: "nanobsd" prototype"
    Date: Sat, 13 Mar 2004 12:30:24 +0100
    To: current@freebsd.org
    
    

    Hi,

    Tom Rhodes committed my icc patches. This should have no impact on
    compiles with gcc, but allows to compile the kernel with Intels C/C++
    compiler.

    To compile the kernel with icc, please make sure you have the latest
    version of lang/icc7 (I committed an update to the port some minutes
    ago) and add the bin directory to the PATH as requested by the
    post-install message. Unfortunately compiling the kernel with lang/icc
    (this is icc v8) results in a broken kernel (doesn't detect the FPU).

    Additionally you need to have an updated share/mk, building and
    installing the world takes care of this.

    Now create a new kernel compile directory (e.g. via "config -d
    ../compile/MYKERNEL_icc MYKERNEL") and cd into it. Compiling with icc is
    like compiling with gcc, you just have to tell the build infrastructure
    to use icc as the compiler: "CC=icc make depend && CC=icc make".

    You should also add the appropriate CFLAGS, either by defining it on the
    command line or by modifying make.conf:
    ---snip---
    .if ${CC} == icc
    CFLAGS=-O2 -ip
    COPTFLAGS=-O2 -ip
    .else
    CFLAGS=-O -pipe
    COPTFLAGS=-O -pipe
    .endif
    ---snip---

    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.

    If you use the sound modules you have to add them into the kernel, the
    sound modules are known to fail to load.

    You can use gcc compiled modules with an icc compiled kernel (and vice
    versa).

    A P4 optimized kernel seems to boot faster on a P4 but I haven't
    verified this with some measurements, so this may be more of a wish than
    reality. If someone wants to run some benchmarks (no, I don't know which
    ones), please tell us about the results.

    For those which want to install icc for the first time now: the port
    tells you where to download it. If you don't find it, you haven't read
    the download-instructions carefully enough. I will not send the icc
    archive to you, so don't even ask for it.

    Note to committers: we have a commercial icc license, so we're allowed
    to distribute icc compiled binaries (but we're far away from being able
    to build an entire release with icc).

    Bye,
    Alexander.

    -- 
               I will be available to get hired in April 2004.
    http://www.Leidinger.net                       Alexander @ Leidinger.net
      GPG fingerprint = C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7
    _______________________________________________
    freebsd-current@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-current
    To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
    

  • Next message: Luigi Rizzo: "Re: "nanobsd" prototype"

    Relevant Pages

    • Re: Need kernel patch to compile with Intel compiler
      ... > the kernel is all about method, i.e., procedures. ... Last time I checked gcc catched the intel compiler ... It is all a matter of knowing the default options that icc uses; ...
      (Linux-Kernel)
    • Fw: semi HEADS UP: icc support committed
      ... Subject: semi HEADS UP: icc support committed ... > To compile the kernel with icc, please make sure you have the latest ... > Don't compile with -ipo, the build infrastructure uses ld directly to ... > sound modules are known to fail to load. ...
      (freebsd-current)
    • patch against src from 20030802 to compile GENERIC with icc
      ... I was able to compile most of GENERIC with icc. ... and there's an internal error in icc for one file, but the patch offers ... into the kernel compile directory, add "$" to the make call ...
      (freebsd-current)
    • Re: quick question about linking Fortran and C
      ... you compile the C code with icc or gcc? ... (ifort may ...
      (comp.lang.fortran)
    • Re: QP2TERM API
      ... void main ... How thisQP2TERMis used??? ... I compile it like this with ICC ...
      (comp.sys.ibm.as400.misc)