<?xml version="1.0"?>
<!DOCTYPE flagsdescription
    SYSTEM "http://www.spec.org/dtd/cpuflags2.dtd"
>

<!-- The lines above are NOT optional.  If you're adept at reading DTDs,
     the one that this file conforms to is at the URL listed above.  
     
     But most humans writing a flags file will want to have it automatically 
     checked using a validating parser such as RXP (available at
     http://www.ltg.ed.ac.uk/~richard/rxp.html), or use one of the on-line
     parsers:
       http://www.stg.brown.edu/service/xmlvalid/
       http://www.cogsci.ed.ac.uk/~richard/xml-check.html
     
     The parser used by the CPU tools is _not_ a validating parser, so it
     may be possible to sneak things by it that would not pass the checkers
     above.  However, if the checkers above say that your file is clean, it's
     clean.

     Flag files submitted to SPEC _will_ be checked by a validating parser.
     Invalid or not-well-formed flag files will be rejected.

     This file is
       Copyright (C) 2006 Standard Performance Evaluation Corporation
       All Rights Reserved
     
     This file may be freely modified and redistributed, provided that the
     copyright notice above and this notice remain unaltered.

     $Id: flags-simple.xml 4007 2006-03-17 11:34:42Z cloyce $

     **********************************************************************
     **********************************************************************
     Unless otherwise explicitly noted, all references to "section n.nn"
     refer to flag_description.html, available at

     http://www.spec.org/cpu2006/docs/flag_description.html
     **********************************************************************
     **********************************************************************

	NOTES:

		
-->
<flagsdescription>

<filename>IBM-AIX</filename>

<title>IBM AIX: Environment Settings and Utilities</title>

<style>
<![CDATA[
body { background: white; }
]]>
</style>

<!-- =====================================================================
  The <header> section is also entirely optional.  If it is provided, and
  no class is specified, then it will be inserted verbatim at the top
  of the flags dump.

  If a class is specified, that text will be inserted verbatim before flags
  of that class.  
  
  As the contents should be HTML, it will save lots of time to just enclose
  the whole thing in a CDATA section.  Section 2.3.1 again.
     ===================================================================-->
<header>
<![CDATA[
<p>IBM AIX 5L V5.3</p>
<p>IBM AIX V6</p>
<p>IBM AIX V7</p>
<p>Last updated: 20-Apr-2011</p> ]]>
</header>

<!-- =====================================================================
  Information about the meaning of boot-time settings, BIOS options,
  kernel tuning, and so forth can go in the 'platform_settings' section.

  They'll be appended to the end of both the flags dump and per-result flag report.

  As the contents should be HTML, it will save lots of time to just enclose
  the whole thing in a CDATA section.  Section 2.3.1 again.
     ===================================================================-->




<!--
  -
  -	Optimization flags: memory allocation.
  -
  -->

<flag name="F-bmaxdata"
      class="optimization"
      regexp="-bmaxdata:(\S+)\b">
<example>
-bmaxdata:0x20000000,
-bmaxdata:0x40000000,
-bmaxdata:0x50000000,
-bmaxdata:0x60000000,
-bmaxdata:0x80000000
</example>
Causes the system loader to put the heap in it's own segment of the size specified.
This is only required for 32-bit applications, as their segments are 256M. If the
last digit of the value is "C", then it also turns off the malloc pool option for
that executable.
</flag>


<flag name="F-bdatapsize"
      class="optimization"
      regexp="-bdatapsize:64K\b">
<example>
-bdatapsize:64K
</example>
Specifies a non-default page size of 64K for the program data segment.
</flag>


<flag name="F-bstackpsize"
      class="optimization"
      regexp="-bstackpsize:64K\b">
<example>
-bstackpsize:64K
</example>
Specifies a non-default page size of 64K for the program stack segment.
</flag>


<flag name="F-btextpsize"
      class="optimization"
      regexp="-btextpsize:64K\b">
<example>
-btextpsize:64K
</example>
Specifies a non-default page size of 64K for the program text segment.
</flag>


<flag name="F-blpdata"
      class="optimization"
      regexp="-blpdata\b">
Sets the bit in the file's XCOFF header indicating that this
executable will request the use of large pages when they are
available on the system and when the user has an appropriate
privilege
</flag>



<!--
  -
  -	Optimization flags: vector calculations.
  -
  -->

<flag name="F-D__IBM_FAST_VECTOR"
      class="optimization"
      regexp="-D__IBM_FAST_VECTOR\b">
The __IBM_FAST_VECTOR macro defines a different iterator for the std::vector
template class. This iterator results in faster code, but is not compatible
with code using the default iterator for a std::vector template class.
All uses of std::vector for a data type must use the same iterator.
 Add -D__IBM_FAST_VECTOR to the compile line, or "#define __IBM_FAST_VECTOR 1"
to your source code to use the faster iterator for std::vector template class.
 You must compile all sources with this macro.
</flag>


<flag name="F-D__IBM_FAST_SET_MAP_ITERATOR"
      class="optimization"
      regexp="-D__IBM_FAST_SET_MAP_ITERATOR\b">
The __IBM_FAST_SET_MAP_ITERATOR macro defines a different iterator for the
std::vector template class. This iterator results in faster code, but is not
compatible with code using the default iterator for a std::vector template class.
All uses of std::vector for a data type must use the same iterator.
 Add -D__IBM_FAST_SET_MAP_ITERATOR to the compile line, or
 "#define __IBM_FAST_SET_MAP_ITERATOR 1" to your source code to use the
 faster iterator for std::vector template class.
You must compile all sources with this macro.
</flag>



<!--
  -
  -	Optimization flags: support libraries.
  -
  -->

<flag name="F-D_ILS_MACROS"
      class="optimization"
      regexp="-D_ILS_MACROS\b">
Causes AIX to define "ischar()" (and friends) as macro's and not subroutines.
</flag>


</flagsdescription>

