X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gas%2Fdoc%2Fc-ppc.texi;h=0bab76ca24c9c3b41c6c993d5ec0088e6ab0dfca;hb=bdc8beb41b656e8071af275ef0e98c4f2d05e564;hp=cae9e234a386e10c16025c748d7248e000679070;hpb=418c17428467b9fbf59a61493d353d7edf1aed4a;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/doc/c-ppc.texi b/gas/doc/c-ppc.texi index cae9e234a3..0bab76ca24 100644 --- a/gas/doc/c-ppc.texi +++ b/gas/doc/c-ppc.texi @@ -1,7 +1,7 @@ -@c Copyright 2001 -@c Free Software Foundation, Inc. +@c Copyright (C) 2001-2019 Free Software Foundation, Inc. @c This is part of the GAS manual. @c For copying conditions, see the file as.texinfo. +@c man end @ifset GENERIC @page @node PPC-Dependent @@ -15,6 +15,8 @@ @cindex PowerPC support @menu * PowerPC-Opts:: Options +* PowerPC-Pseudo:: PowerPC Assembler Directives +* PowerPC-Syntax:: PowerPC Syntax @end menu @node PowerPC-Opts @@ -32,33 +34,122 @@ reference manual. The following table lists all available PowerPC options. -@table @code +@c man begin OPTIONS +@table @gcctabopt +@item -a32 +Generate ELF32 or XCOFF32. + +@item -a64 +Generate ELF64 or XCOFF64. + +@item -K PIC +Set EF_PPC_RELOCATABLE_LIB in ELF flags. + @item -mpwrx | -mpwr2 -Generate code for IBM POWER/2 (RIOS2). +Generate code for POWER/2 (RIOS2). @item -mpwr -Generate code for IBM POWER (RIOS1) +Generate code for POWER (RIOS1) @item -m601 -Generate code for Motorola PowerPC 601. +Generate code for PowerPC 601. @item -mppc, -mppc32, -m603, -m604 -Generate code for Motorola PowerPC 603/604. +Generate code for PowerPC 603/604. @item -m403, -m405 -Generate code for Motorola PowerPC 403/405. +Generate code for PowerPC 403/405. + +@item -m440 +Generate code for PowerPC 440. BookE and some 405 instructions. + +@item -m464 +Generate code for PowerPC 464. + +@item -m476 +Generate code for PowerPC 476. + +@item -m7400, -m7410, -m7450, -m7455 +Generate code for PowerPC 7400/7410/7450/7455. + +@item -m750cl, -mgekko, -mbroadway +Generate code for PowerPC 750CL/Gekko/Broadway. + +@item -m821, -m850, -m860 +Generate code for PowerPC 821/850/860. @item -mppc64, -m620 -Generate code for Motorola PowerPC 620. +Generate code for PowerPC 620/625/630. + +@item -me500, -me500x2 +Generate code for Motorola e500 core complex. + +@item -me500mc +Generate code for Freescale e500mc core complex. + +@item -me500mc64 +Generate code for Freescale e500mc64 core complex. + +@item -me5500 +Generate code for Freescale e5500 core complex. + +@item -me6500 +Generate code for Freescale e6500 core complex. + +@item -mspe +Generate code for Motorola SPE instructions. + +@item -mspe2 +Generate code for Freescale SPE2 instructions. + +@item -mtitan +Generate code for AppliedMicro Titan core complex. @item -mppc64bridge Generate code for PowerPC 64, including bridge insns. -@item -mbooke64 -Generate code for 64-bit Motorola BookE. +@item -mbooke +Generate code for 32-bit BookE. + +@item -ma2 +Generate code for A2 architecture. + +@item -me300 +Generate code for PowerPC e300 family. + +@item -maltivec +Generate code for processors with AltiVec instructions. -@item -mbooke, mbooke32 -Generate code for 32-bit Motorola BookE. +@item -mvle +Generate code for Freescale PowerPC VLE instructions. + +@item -mvsx +Generate code for processors with Vector-Scalar (VSX) instructions. + +@item -mhtm +Generate code for processors with Hardware Transactional Memory instructions. + +@item -mpower4, -mpwr4 +Generate code for Power4 architecture. + +@item -mpower5, -mpwr5, -mpwr5x +Generate code for Power5 architecture. + +@item -mpower6, -mpwr6 +Generate code for Power6 architecture. + +@item -mpower7, -mpwr7 +Generate code for Power7 architecture. + +@item -mpower8, -mpwr8 +Generate code for Power8 architecture. + +@item -mpower9, -mpwr9 +Generate code for Power9 architecture. + +@item -mcell +@item -mcell +Generate code for Cell Broadband Engine architecture. @item -mcom Generate code Power/PowerPC common instructions. @@ -73,18 +164,18 @@ Allow symbolic names for registers. Do not allow symbolic names for registers. @item -mrelocatable -Support for GCC's -mrelocatble option. +Support for GCC's -mrelocatable option. @item -mrelocatable-lib -Support for GCC's -mrelocatble-lib option. +Support for GCC's -mrelocatable-lib option. @item -memb Set PPC_EMB bit in ELF flags. -@item -mlittle, -mlittle-endian +@item -mlittle, -mlittle-endian, -le Generate code for a little endian machine. -@item -mbig, -mbig-endian +@item -mbig, -mbig-endian, -be Generate code for a big endian machine. @item -msolaris @@ -92,4 +183,57 @@ Generate code for Solaris. @item -mno-solaris Do not generate code for Solaris. + +@item -nops=@var{count} +If an alignment directive inserts more than @var{count} nops, put a +branch at the beginning to skip execution of the nops. @end table +@c man end + + +@node PowerPC-Pseudo +@section PowerPC Assembler Directives + +@cindex directives for PowerPC +@cindex PowerPC directives +A number of assembler directives are available for PowerPC. The +following table is far from complete. + +@table @code +@item .machine "string" +This directive allows you to change the machine for which code is +generated. @code{"string"} may be any of the -m cpu selection options +(without the -m) enclosed in double quotes, @code{"push"}, or +@code{"pop"}. @code{.machine "push"} saves the currently selected +cpu, which may be restored with @code{.machine "pop"}. +@end table + +@node PowerPC-Syntax +@section PowerPC Syntax +@menu +* PowerPC-Chars:: Special Characters +@end menu + +@node PowerPC-Chars +@subsection Special Characters + +@cindex line comment character, PowerPC +@cindex PowerPC line comment character +The presence of a @samp{#} on a line indicates the start of a comment +that extends to the end of the current line. + +If a @samp{#} appears as the first character of a line then the whole +line is treated as a comment, but in this case the line could also be +a logical line number directive (@pxref{Comments}) or a preprocessor +control command (@pxref{Preprocessing}). + +If the assembler has been configured for the ppc-*-solaris* target +then the @samp{!} character also acts as a line comment character. +This can be disabled via the @option{-mno-solaris} command-line +option. + +@cindex line separator, PowerPC +@cindex statement separator, PowerPC +@cindex PowerPC line separator +The @samp{;} character can be used to separate statements on the same +line.