08-14-2007
Quote:
Originally Posted by
porter
Often optimizations are incompatible with debuggers because optimizers will re-organize variables on the stack for efficiency, um, basically optimizing the thing.
Optimizers are more aggressive and less forgiving of dodgy code.
Also, if you are using C++ libraries, have these been built with the same optimizations?
Use maximum warning and errors during compilation, for HPUX compilers I use "-Aa -D_HPUX_SOURCE +e +We".
Try GCC and see if that exposes anything, again use "-Wall -Werror".
Thank you, porter!
I tried -Aa option. The code won't compile, it complains about the inline statements we have in our code. Apparently, there's a reason why the -AA flag is used. All libraries are built with the same options.
It's weird to see that -g option is not compatible with -O (a typical optimization option).
The aCC man page says that +O2 optimization option is the same as +O1 optimization plus global optimization. What the "global optimization" means in this case? Are there any specific things I have to check in my code for that cause the crash with +O2 option, but not +O1?
Thank you in advance.
9 More Discussions You Might Find Interesting
1. Programming
I have an AIX 64-bit program which uses following from AIX5.3
/usr/lib/libc.a(shr_64.o)
/usr/lib/libpthread.a(shr_xpg5_64.o)
/home/jeet_xp/export/power/usr/lib/libsarpc.a(shr.o)
/unix
/usr/lib/libcrypt.a(shr_64.o)
/usr/lib/libc_r.a(shr_64.o)
... (3 Replies)
Discussion started by: jeet_xp
3 Replies
2. UNIX for Advanced & Expert Users
hello...
thats a great forum btw :)
my problem is that I need a list of the Base Level Filesets (BLF) which are needed by a specific program.
Is there any command/tool which shows me that?
during the installation I can choose "Preview only" so that I can see what BLF´s are missing etc but... (4 Replies)
Discussion started by: cypher82
4 Replies
3. UNIX for Dummies Questions & Answers
Is there any book/resource that one can refer to, to be able to write programs at kernel/system level.. I'm looking for a programming book that could serve as a guide to write kernel codes / system level programming etc..
I have Tannenbaum's Design and Implementation. It addresses theoretical... (2 Replies)
Discussion started by: vishwamitra
2 Replies
4. Solaris
what are the major Difference Between run level & init level (2 Replies)
Discussion started by: rajaramrnb
2 Replies
5. Programming
Hi,
Could anyone tell me the reason why the following program crashes?
class A {
int x;
public:
A() {
cout << "from A()" << endl;
}
~A() {
cout << "from ~A()" << endl;
}
};
class B : public A {
public:
B() {
cout << "from B()"... (2 Replies)
Discussion started by: royalibrahim
2 Replies
6. Programming
Hi,
I am a newbie to linux programming. I have implemented msgqueue in C.
msgrcv() call at the client end is as below:
msgrcv( msgqid, msgptr, msgsize, msgtype, 0 );
My program works fine when msgrcv () from /lib/libc.so.6 is called.
However it crashes when __libc_msgrcv() is called.
... (3 Replies)
Discussion started by: praasanna
3 Replies
7. Programming
Hi,
Can anyone tell me why the below program is crashing? and where exactly it is crashing. What is the corrective measure to be taken to make it work fine?
#include <iostream>
#include <cstring>
using namespace std;
class CString {
char* m_data;
public:
CString() :... (6 Replies)
Discussion started by: royalibrahim
6 Replies
8. Red Hat
We have a RHEL 5.8 server at the production level and we have a Java application on this server. I know of the SSL certificate generation at the OS (RHEL) level but it is implemented on the Java application by our development team using the Java keytool. My doubt is that is the SSL generation can... (3 Replies)
Discussion started by: RHCE
3 Replies
9. UNIX and Linux Applications
I am trying to run apcupsd, but it will not retain contact the UPS
root@meow:/home/ethan/UPS/gapcmon-0.8.9# /etc/init.d/apcupsd start
Starting UPS power management:
A copy of the daemon is still running. If you just stopped it,
please wait about 5 seconds for it to shut down.... (0 Replies)
Discussion started by: Meow613
0 Replies
LEARN ABOUT REDHAT
xsubpp
XSUBPP(1) Perl Programmers Reference Guide XSUBPP(1)
NAME
xsubpp - compiler to convert Perl XS code into C code
SYNOPSIS
xsubpp [-v] [-C++] [-except] [-s pattern] [-prototypes] [-noversioncheck] [-nolinenumbers] [-nooptimize] [-typemap typemap] ... file.xs
DESCRIPTION
This compiler is typically run by the makefiles created by ExtUtils::MakeMaker.
xsubpp will compile XS code into C code by embedding the constructs necessary to let C functions manipulate Perl values and creates the
glue necessary to let Perl access those functions. The compiler uses typemaps to determine how to map C function parameters and variables
to Perl values.
The compiler will search for typemap files called typemap. It will use the following search path to find default typemaps, with the right-
most typemap taking precedence.
../../../typemap:../../typemap:../typemap:typemap
OPTIONS
Note that the "XSOPT" MakeMaker option may be used to add these options to any makefiles generated by MakeMaker.
-C++ Adds ``extern "C"'' to the C code.
-hiertype
Retains '::' in type names so that C++ hierachical types can be mapped.
-except
Adds exception handling stubs to the C code.
-typemap typemap
Indicates that a user-supplied typemap should take precedence over the default typemaps. This option may be used multiple times, with
the last typemap having the highest precedence.
-v Prints the xsubpp version number to standard output, then exits.
-prototypes
By default xsubpp will not automatically generate prototype code for all xsubs. This flag will enable prototypes.
-noversioncheck
Disables the run time test that determines if the object file (derived from the ".xs" file) and the ".pm" files have the same version
number.
-nolinenumbers
Prevents the inclusion of `#line' directives in the output.
-nooptimize
Disables certain optimizations. The only optimization that is currently affected is the use of targets by the output C code (see
perlguts). This may significantly slow down the generated code, but this is the way xsubpp of 5.005 and earlier operated.
-noinout
Disable recognition of "IN", "OUT_LIST" and "INOUT_LIST" declarations.
-noargtypes
Disable recognition of ANSI-like descriptions of function signature.
ENVIRONMENT
No environment variables are used.
AUTHOR
Larry Wall
MODIFICATION HISTORY
See the file changes.pod.
SEE ALSO
perl(1), perlxs(1), perlxstut(1)
perl v5.8.0 2003-02-18 XSUBPP(1)