Home | History | Annotate | Line # | Download | only in doc
c-ppc.texi revision 1.1
      1  1.1  skrll @c Copyright 2001, 2002, 2003, 2005, 2006
      2  1.1  skrll @c Free Software Foundation, Inc.
      3  1.1  skrll @c This is part of the GAS manual.
      4  1.1  skrll @c For copying conditions, see the file as.texinfo.
      5  1.1  skrll @ifset GENERIC
      6  1.1  skrll @page
      7  1.1  skrll @node PPC-Dependent
      8  1.1  skrll @chapter PowerPC Dependent Features
      9  1.1  skrll @end ifset
     10  1.1  skrll @ifclear GENERIC
     11  1.1  skrll @node Machine Dependencies
     12  1.1  skrll @chapter PowerPC Dependent Features
     13  1.1  skrll @end ifclear
     14  1.1  skrll 
     15  1.1  skrll @cindex PowerPC support
     16  1.1  skrll @menu
     17  1.1  skrll * PowerPC-Opts::                Options
     18  1.1  skrll * PowerPC-Pseudo::              PowerPC Assembler Directives
     19  1.1  skrll @end menu
     20  1.1  skrll 
     21  1.1  skrll @node PowerPC-Opts
     22  1.1  skrll @section Options
     23  1.1  skrll 
     24  1.1  skrll @cindex options for PowerPC
     25  1.1  skrll @cindex PowerPC options
     26  1.1  skrll @cindex architectures, PowerPC
     27  1.1  skrll @cindex PowerPC architectures
     28  1.1  skrll The PowerPC chip family includes several successive levels, using the same
     29  1.1  skrll core instruction set, but including a few additional instructions at
     30  1.1  skrll each level.  There are exceptions to this however.  For details on what
     31  1.1  skrll instructions each variant supports, please see the chip's architecture
     32  1.1  skrll reference manual.
     33  1.1  skrll 
     34  1.1  skrll The following table lists all available PowerPC options.
     35  1.1  skrll 
     36  1.1  skrll @table @code
     37  1.1  skrll @item -mpwrx | -mpwr2
     38  1.1  skrll Generate code for POWER/2 (RIOS2).
     39  1.1  skrll 
     40  1.1  skrll @item -mpwr
     41  1.1  skrll Generate code for POWER (RIOS1)
     42  1.1  skrll 
     43  1.1  skrll @item -m601
     44  1.1  skrll Generate code for PowerPC 601.
     45  1.1  skrll 
     46  1.1  skrll @item -mppc, -mppc32, -m603, -m604
     47  1.1  skrll Generate code for PowerPC 603/604.
     48  1.1  skrll 
     49  1.1  skrll @item -m403, -m405
     50  1.1  skrll Generate code for PowerPC 403/405.
     51  1.1  skrll 
     52  1.1  skrll @item -m440
     53  1.1  skrll Generate code for PowerPC 440.  BookE and some 405 instructions.
     54  1.1  skrll 
     55  1.1  skrll @item -m7400, -m7410, -m7450, -m7455
     56  1.1  skrll Generate code for PowerPC 7400/7410/7450/7455.
     57  1.1  skrll 
     58  1.1  skrll @item -m750cl
     59  1.1  skrll Generate code for PowerPC 750CL.
     60  1.1  skrll 
     61  1.1  skrll @item -mppc64, -m620
     62  1.1  skrll Generate code for PowerPC 620/625/630.
     63  1.1  skrll 
     64  1.1  skrll @item -me500, -me500x2
     65  1.1  skrll Generate code for Motorola e500 core complex.
     66  1.1  skrll 
     67  1.1  skrll @item -mspe
     68  1.1  skrll Generate code for Motorola SPE instructions.
     69  1.1  skrll 
     70  1.1  skrll @item -mppc64bridge
     71  1.1  skrll Generate code for PowerPC 64, including bridge insns.
     72  1.1  skrll 
     73  1.1  skrll @item -mbooke64
     74  1.1  skrll Generate code for 64-bit BookE.
     75  1.1  skrll 
     76  1.1  skrll @item -mbooke, mbooke32
     77  1.1  skrll Generate code for 32-bit BookE.
     78  1.1  skrll 
     79  1.1  skrll @item -me300
     80  1.1  skrll Generate code for PowerPC e300 family.
     81  1.1  skrll 
     82  1.1  skrll @item -maltivec
     83  1.1  skrll Generate code for processors with AltiVec instructions.
     84  1.1  skrll 
     85  1.1  skrll @item -mvsx
     86  1.1  skrll Generate code for processors with Vector-Scalar (VSX) instructions.
     87  1.1  skrll 
     88  1.1  skrll @item -mpower4
     89  1.1  skrll Generate code for Power4 architecture.
     90  1.1  skrll 
     91  1.1  skrll @item -mpower5
     92  1.1  skrll Generate code for Power5 architecture.
     93  1.1  skrll 
     94  1.1  skrll @item -mpower6
     95  1.1  skrll Generate code for Power6 architecture.
     96  1.1  skrll 
     97  1.1  skrll @item -mpower7
     98  1.1  skrll Generate code for Power7 architecture.
     99  1.1  skrll 
    100  1.1  skrll @item -mcell
    101  1.1  skrll Generate code for Cell Broadband Engine architecture.
    102  1.1  skrll 
    103  1.1  skrll @item -mcom
    104  1.1  skrll Generate code Power/PowerPC common instructions.
    105  1.1  skrll 
    106  1.1  skrll @item -many
    107  1.1  skrll Generate code for any architecture (PWR/PWRX/PPC).
    108  1.1  skrll 
    109  1.1  skrll @item -mregnames
    110  1.1  skrll Allow symbolic names for registers.
    111  1.1  skrll 
    112  1.1  skrll @item -mno-regnames
    113  1.1  skrll Do not allow symbolic names for registers.
    114  1.1  skrll 
    115  1.1  skrll @item -mrelocatable
    116  1.1  skrll Support for GCC's -mrelocatable option.
    117  1.1  skrll 
    118  1.1  skrll @item -mrelocatable-lib
    119  1.1  skrll Support for GCC's -mrelocatable-lib option.
    120  1.1  skrll 
    121  1.1  skrll @item -memb
    122  1.1  skrll Set PPC_EMB bit in ELF flags.
    123  1.1  skrll 
    124  1.1  skrll @item -mlittle, -mlittle-endian
    125  1.1  skrll Generate code for a little endian machine.
    126  1.1  skrll 
    127  1.1  skrll @item -mbig, -mbig-endian
    128  1.1  skrll Generate code for a big endian machine.
    129  1.1  skrll 
    130  1.1  skrll @item -msolaris
    131  1.1  skrll Generate code for Solaris.
    132  1.1  skrll 
    133  1.1  skrll @item -mno-solaris
    134  1.1  skrll Do not generate code for Solaris.
    135  1.1  skrll @end table
    136  1.1  skrll 
    137  1.1  skrll 
    138  1.1  skrll @node PowerPC-Pseudo
    139  1.1  skrll @section PowerPC Assembler Directives
    140  1.1  skrll 
    141  1.1  skrll @cindex directives for PowerPC
    142  1.1  skrll @cindex PowerPC directives
    143  1.1  skrll A number of assembler directives are available for PowerPC.  The
    144  1.1  skrll following table is far from complete.
    145  1.1  skrll 
    146  1.1  skrll @table @code
    147  1.1  skrll @item .machine "string"
    148  1.1  skrll This directive allows you to change the machine for which code is
    149  1.1  skrll generated.  @code{"string"} may be any of the -m cpu selection options
    150  1.1  skrll (without the -m) enclosed in double quotes, @code{"push"}, or
    151  1.1  skrll @code{"pop"}.  @code{.machine "push"} saves the currently selected
    152  1.1  skrll cpu, which may be restored with @code{.machine "pop"}.
    153  1.1  skrll @end table
    154