nl_main.c revision 436e89c602e787e7a27dd6624b09beed41a0da8a
1
2/*--------------------------------------------------------------------*/
3/*--- Nulgrind: The minimal Valgrind tool.               nl_main.c ---*/
4/*--------------------------------------------------------------------*/
5
6/*
7   This file is part of Nulgrind, the minimal Valgrind tool,
8   which does no instrumentation or analysis.
9
10   Copyright (C) 2002-2013 Nicholas Nethercote
11      njn@valgrind.org
12
13   This program is free software; you can redistribute it and/or
14   modify it under the terms of the GNU General Public License as
15   published by the Free Software Foundation; either version 2 of the
16   License, or (at your option) any later version.
17
18   This program is distributed in the hope that it will be useful, but
19   WITHOUT ANY WARRANTY; without even the implied warranty of
20   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21   General Public License for more details.
22
23   You should have received a copy of the GNU General Public License
24   along with this program; if not, write to the Free Software
25   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
26   02111-1307, USA.
27
28   The GNU General Public License is contained in the file COPYING.
29*/
30
31#include "pub_tool_basics.h"
32#include "pub_tool_tooliface.h"
33
34static void nl_post_clo_init(void)
35{
36}
37
38static
39IRSB* nl_instrument ( VgCallbackClosure* closure,
40                      IRSB* bb,
41                      VexGuestLayout* layout,
42                      VexGuestExtents* vge,
43                      VexArchInfo* archinfo_host,
44                      IRType gWordTy, IRType hWordTy )
45{
46    return bb;
47}
48
49static void nl_fini(Int exitcode)
50{
51}
52
53static void nl_pre_clo_init(void)
54{
55   VG_(details_name)            ("Nulgrind");
56   VG_(details_version)         (NULL);
57   VG_(details_description)     ("the minimal Valgrind tool");
58   VG_(details_copyright_author)(
59      "Copyright (C) 2002-2013, and GNU GPL'd, by Nicholas Nethercote.");
60   VG_(details_bug_reports_to)  (VG_BUGS_TO);
61
62   VG_(details_avg_translation_sizeB) ( 275 );
63
64   VG_(basic_tool_funcs)        (nl_post_clo_init,
65                                 nl_instrument,
66                                 nl_fini);
67
68   /* No needs, no core events to track */
69}
70
71VG_DETERMINE_INTERFACE_VERSION(nl_pre_clo_init)
72
73/*--------------------------------------------------------------------*/
74/*--- end                                                          ---*/
75/*--------------------------------------------------------------------*/
76