diff options
author | Christopher Faylor <me@cgf.cx> | 2002-02-27 16:10:17 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2002-02-27 16:10:17 +0000 |
commit | 67763c0ca21b2f4d175d77973ed22b38884bf39c (patch) | |
tree | 5769a862e4835a80cb5f841f83a1162702ce8d90 /winsup/utils/ssp.c | |
parent | e3c6baed8aa1d03ce0a0341ba16b30a38aa64d85 (diff) | |
download | newlib-67763c0ca21b2f4d175d77973ed22b38884bf39c.zip newlib-67763c0ca21b2f4d175d77973ed22b38884bf39c.tar.gz newlib-67763c0ca21b2f4d175d77973ed22b38884bf39c.tar.bz2 |
* ssp.c (help_desk): Fix compiler warning. Christopher Faylor <cgf@redhat.com>
Change appropriate globals to statics throughout.
* cygcheck.cc (usage): Simplify usage output. Generalize to allow use for
help.
(longopts): Add version option.
(opts): Add 'V" version option.
(print_version): New function.
(main): Accommodate new version option. Accommodate usage parameter changes.
Use usage to output help message.
* Makefile.in (CXXFLAGS): Add override so that HAVE_DECL_GETOPT is defined.
(libbfd): Use -B rather than -L so that bfd from build directory is correctly
found.
(libintl): Ditto.
Diffstat (limited to 'winsup/utils/ssp.c')
-rw-r--r-- | winsup/utils/ssp.c | 84 |
1 files changed, 42 insertions, 42 deletions
diff --git a/winsup/utils/ssp.c b/winsup/utils/ssp.c index 1abde53..4955085 100644 --- a/winsup/utils/ssp.c +++ b/winsup/utils/ssp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000, Red Hat, Inc. + * Copyright (c) 2000, 2001, 2002 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -22,47 +22,47 @@ #include <windows.h> #ifdef __GNUC__ -const char *help_text = " -Usage: ssp [options] low_pc high_pc command... - -The SSP is a `single-step profiler' - it uses the debug API to -single-step your program, noting *everything* your program runs, not -just random places hit by random timer interrupts. You must specify -the range of EIP values to profile. For example, you could profile -just a function, or just a line of code, or the whole thing. -Use \"objdump -h\" to find the start of .text and the section following -it; this is what you want. - -There are many options to ssp. Since step-profiling makes your -program run about 1,000 times slower than normal, it's best to -understand all the options so that you can narrow down the parts -of your program you need to single-step. - --v = verbose messages about debug events. - --d, -e = disable/enable single-stepping by default. Use -OutputDebugString (\"ssp on\") to enable stepping, or \"ssp off\" to -disable it. Thus, you can profile a single function call or block. - --t = trace every EIP value to a file TRACE.SSP. This gets big *fast*. -Use \"addr2line -C -f -s -e foo.exe < trace.ssp > lines.ssp\" and then -\"perl cvttrace\" to convert to symbolic traces. - --tc = trace every EIP value to the console. *Lots* slower. - --s = trace sub-threads too. Dangerous if you have race conditions. - --dll = enable dll profiling. A chart of relative DLL usage is -produced after the run. - -Examples: - ssp 0x401000 0x403000 hello.exe - ssp -v -d -dll 0x401000 0x440000 foo.exe - -The output is a file \"gmon.out\" that can be read with gprof: - gprof -b foo.exe - -See ssp.txt in the cygwin sources for more information. +const char *help_text = "\ +Usage: ssp [options] low_pc high_pc command...\n\ +\n\ +The SSP is a `single-step profiler' - it uses the debug API to\n\ +single-step your program, noting *everything* your program runs, not\n\ +just random places hit by random timer interrupts. You must specify\n\ +the range of EIP values to profile. For example, you could profile\n\ +just a function, or just a line of code, or the whole thing.\n\ +Use \"objdump -h\" to find the start of .text and the section following\n\ +it; this is what you want.\n\ +\n\ +There are many options to ssp. Since step-profiling makes your\n\ +program run about 1,000 times slower than normal, it's best to\n\ +understand all the options so that you can narrow down the parts\n\ +of your program you need to single-step.\n\ +\n\ +-v = verbose messages about debug events.\n\ +\n\ +-d, -e = disable/enable single-stepping by default. Use\n\ +OutputDebugString (\"ssp on\") to enable stepping, or \"ssp off\" to\n\ +disable it. Thus, you can profile a single function call or block.\n\ +\n\ +-t = trace every EIP value to a file TRACE.SSP. This gets big *fast*.\n\ +Use \"addr2line -C -f -s -e foo.exe < trace.ssp > lines.ssp\" and then\n\ +\"perl cvttrace\" to convert to symbolic traces.\n\ +\n\ +-tc = trace every EIP value to the console. *Lots* slower.\n\ +\n\ +-s = trace sub-threads too. Dangerous if you have race conditions.\n\ +\n\ +-dll = enable dll profiling. A chart of relative DLL usage is\n\ +produced after the run.\n\ +\n\ +Examples:\n\ + ssp 0x401000 0x403000 hello.exe\n\ + ssp -v -d -dll 0x401000 0x440000 foo.exe\n\ +\n\ +The output is a file \"gmon.out\" that can be read with gprof:\n\ + gprof -b foo.exe\n\ +\n\ +See ssp.txt in the cygwin sources for more information.\n\ "; #else char *help_text = "Usage: get cygwin!\n"; |