HP aC++/HP C A.06.25 Programmer's Guide

Enabling Aggressive Optimizations......................................................................207
Enabling Only Conservative Optimizations..........................................................207
Removing Compilation Time Limits When Optimizing.......................................207
Limiting the Size of Optimized Code....................................................................208
Combining Optimization Options.........................................................................208
Profile-Based Optimization.........................................................................................208
Instrumentation......................................................................................................209
Collecting Data for Profiling..................................................................................209
Maintaining Profile Data Files...............................................................................209
Example 1...............................................................................................................210
Example 2...............................................................................................................210
Performing Profile-Based Optimization................................................................210
Pragmas That Control Optimization................................................................................210
8 Exception Handling................................................................................................................211
Exception Handling..........................................................................................................211
Exception Handling in C++.........................................................................................211
Exception Handling as Defined by the ANSI/ISO C++ International Standard.........212
Basic Exception Handling Example............................................................................212
Function Try Block Examples......................................................................................212
Debugging Exception Handling..................................................................................213
Performance Considerations.......................................................................................213
Using Threads...................................................................................................................213
Rogue Wave Standard C++ Library 2.2.1.....................................................................214
Rogue Wave Standard C++ Library 1.2.1 and Tools.h++ 7.0.6.....................................214
Using Locks.................................................................................................................214
Required Command-line Options...............................................................................215
Rogue Wave Standard C++ Library 2.2.1...............................................................215
Rogue Wave Standard C++ Library 1.2.1 and Tools.h++ 7.0.6................................215
Limitations...................................................................................................................215
Using -D_THREAD_SAFE with the cfront Compatible libstream........................216
Differences between Standard iostreams and cfront Compatible libstream.........216
Using -D__HPACC_THREAD_SAFE_RB_TREE...................................................216
Exception Handling.....................................................................................................217
Pthreads (POSIX Threads)................................................................................................217
Limitations...................................................................................................................217
Function Scoping..............................................................................................................219
Performance Options........................................................................................................219
Parallel Programming Using OpenMP.............................................................................219
OpenMP Implementation............................................................................................219
OpenMP Header File..............................................................................................221
OpenMP Library....................................................................................................221
+O[no]openmp Command Line Option................................................................221
Table of Contents 15