lkml.org 
[lkml]   [2014]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 16/29] ktap: add amalgamation build(kernel/trace/ktap/amalg.c)
    Date
    This compiles the ktapvm as one huge C file and allows
    GCC to generate faster and shorter code.

    No amalgamation build in x86_64:
    ktapvm.ko: 3.1M

    amalgamation build in x86_64:
    ktapvm.ko: 1.1M

    User can set use amalgamation build or not in Makefile.

    (Need to analyze further why have so big differences)

    Signed-off-by: Jovi Zhangwei <jovi.zhangwei@gmail.com>
    ---
    kernel/trace/ktap/amalg.c | 37 +++++++++++++++++++++++++++++++++++++
    1 file changed, 37 insertions(+)
    create mode 100644 kernel/trace/ktap/amalg.c

    diff --git a/kernel/trace/ktap/amalg.c b/kernel/trace/ktap/amalg.c
    new file mode 100644
    index 0000000..9935ccf
    --- /dev/null
    +++ b/kernel/trace/ktap/amalg.c
    @@ -0,0 +1,37 @@
    +/*
    + * amalg.c - ktapvm kernel module amalgamation.
    + *
    + * This file is part of ktap by Jovi Zhangwei.
    + *
    + * Copyright (C) 2012-2014 Jovi Zhangwei <jovi.zhangwei@gmail.com>.
    + *
    + * ktap is free software; you can redistribute it and/or modify it
    + * under the terms and conditions of the GNU General Public License,
    + * version 2, as published by the Free Software Foundation.
    + *
    + * ktap is distributed in the hope it will be useful, but WITHOUT
    + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
    + * more details.
    + *
    + * You should have received a copy of the GNU General Public License along with
    + * this program; if not, write to the Free Software Foundation, Inc.,
    + * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
    + */
    +
    +#include "ktap.c"
    +#include "kp_obj.c"
    +#include "kp_bcread.c"
    +#include "kp_str.c"
    +#include "kp_mempool.c"
    +#include "kp_tab.c"
    +#include "kp_transport.c"
    +#include "kp_vm.c"
    +#include "kp_events.c"
    +#include "lib_base.c"
    +#include "lib_ansi.c"
    +#include "lib_kdebug.c"
    +#include "lib_timer.c"
    +#include "lib_table.c"
    +#include "lib_net.c"
    +
    --
    1.8.1.4


    \
     
     \ /
      Last update: 2014-03-29 17:01    [W:5.125 / U:0.956 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site