diff options
author | Chenghua Xu <paul.hua.gm@gmail.com> | 2018-08-29 20:08:58 +0800 |
---|---|---|
committer | Chenghua Xu <paul.hua.gm@gmail.com> | 2018-08-29 20:08:58 +0800 |
commit | a693765e23934996abbe4e44c4ba28eabdece4f9 (patch) | |
tree | 15c5e0d72cbff340fcc1f4afd57263b5ffe96ba0 /gas/doc | |
parent | bdc6c06e3b08ec48ec5ee2174dedc846969c36fd (diff) | |
download | binutils-a693765e23934996abbe4e44c4ba28eabdece4f9.zip binutils-a693765e23934996abbe4e44c4ba28eabdece4f9.tar.gz binutils-a693765e23934996abbe4e44c4ba28eabdece4f9.tar.bz2 |
[MIPS/GAS] Add Loongson EXT2 Instructions support.
bfd/
* elfxx-mips.c (print_mips_ases): Add Loongson EXT2 extension.
binutils/
* readelf.c (print_mips_ases): Add Loongson EXT2 extension.
gas/
* NEWS: Mention Loongson EXTensions R2 (EXT2) support.
* config/tc-mips.c (options): Add OPTION_LOONGSON_EXT2 and
OPTION_NO_LOONGSON_EXT2.
(md_longopts): Likewise.
(mips_ases): Define availability for EXT.
(mips_convert_ase_flags): Map ASE_LOONGSON_EXT2 to
AFL_ASE_LOONGSON_EXT2.
(md_show_usage): Add help for -mloongson-ext2 and
-mno-loongson-ext2.
* doc/as.texi: Document -mloongson-ext2, -mno-loongson-ext2.
* doc/c-mips.texi: Document -mloongson-ext2, -mno-loongson-ext2,
.set loongson-ext2 and .set noloongson-ext2.
* testsuite/gas/mips/loongson-ext2.d: New test.
* testsuite/gas/mips/loongson-ext2.s: New test.
* testsuite/gas/mips/mips.exp: Run loongson-ext2 test.
include/
* elf/mips.h (AFL_ASE_LOONGSON_EXT2): New macro.
(AFL_ASE_MASK): Update to include AFL_ASE_LOONGSON_EXT2.
* opcode/mips.h (ASE_LOONGSON_EXT2): New macro.
opcodes/
* mips-dis.c (parse_mips_ase_option): Handle -M loongson-ext
option.
(print_mips_disassembler_options): Document -M loongson-ext.
* mips-opc.c (LEXT2): New macro.
(mips_opcodes): Add cto, ctz, dcto, dctz instructions.
Diffstat (limited to 'gas/doc')
-rw-r--r-- | gas/doc/as.texi | 8 | ||||
-rw-r--r-- | gas/doc/c-mips.texi | 16 |
2 files changed, 24 insertions, 0 deletions
diff --git a/gas/doc/as.texi b/gas/doc/as.texi index 92dd366..f3285b6 100644 --- a/gas/doc/as.texi +++ b/gas/doc/as.texi @@ -447,6 +447,7 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}. [@b{-mloongson-mmi}] [@b{-mno-loongson-mmi}] [@b{-mloongson-cam}] [@b{-mno-loongson-cam}] [@b{-mloongson-ext}] [@b{-mno-loongson-ext}] + [@b{-mloongson-ext2}] [@b{-mno-loongson-ext2}] [@b{-minsn32}] [@b{-mno-insn32}] [@b{-mfix7000}] [@b{-mno-fix7000}] [@b{-mfix-rm7000}] [@b{-mno-fix-rm7000}] @@ -1587,6 +1588,13 @@ Generate code for the Loongson EXTensions (EXT) instructions. This tells the assembler to accept Loongson EXT instructions. @samp{-mno-loongson-ext} turns off this option. +@item -mloongson-ext2 +@itemx -mno-loongson-ext2 +Generate code for the Loongson EXTensions R2 (EXT2) instructions. +This option implies @samp{-mloongson-ext}. +This tells the assembler to accept Loongson EXT2 instructions. +@samp{-mno-loongson-ext2} turns off this option. + @item -minsn32 @itemx -mno-insn32 Only use 32-bit instruction encodings when generating code for the diff --git a/gas/doc/c-mips.texi b/gas/doc/c-mips.texi index 80b4160..f74e10f 100644 --- a/gas/doc/c-mips.texi +++ b/gas/doc/c-mips.texi @@ -267,6 +267,13 @@ Application Specific Extension. This tells the assembler to accept EXT instructions. @samp{-mno-loongson-ext} turns off this option. +@item -mloongson-ext2 +@itemx -mno-loongson-ext2 +Generate code for the Loongson EXTensions R2 (EXT2) instructions +Application Specific Extension. This tells the assembler to accept EXT2 +instructions. +@samp{-mno-loongson-ext2} turns off this option. + @item -minsn32 @itemx -mno-insn32 Only use 32-bit instruction encodings when generating code for the @@ -1182,6 +1189,15 @@ instructions from the Loongson EXT from that point on in the assembly. The @code{.set noloongson-ext} directive prevents Loongson EXT instructions from being accepted. +@cindex Loongson EXTensions R2 (EXT2) instructions generation override +@kindex @code{.set loongson-ext2} +@kindex @code{.set noloongson-ext2} +The directive @code{.set loongson-ext2} makes the assembler accept +instructions from the Loongson EXT2 from that point on in the assembly. +This directive implies @code{.set loognson-ext}. +The @code{.set noloongson-ext2} directive prevents Loongson EXT2 instructions +from being accepted. + Traditional MIPS assemblers do not support these directives. @node MIPS Floating-Point |