/// 未サポートの命令 /// ・Alternate Address Spaceに関わる命令は全て未サポートとした。 LDSBA Load Signed Byte from Alternate space LDSHA Load Signed Halfword from Alternate space LDUBA Load Unsigned Byte from Alternate space LDUHA Load Unsigned Halfword from Alternate space LDA Load Word from Alternate space LDDA Load Doubleword from Alternate space STBA Store Byte into Alternate space STHA Store Halfword into Alternate space STA Store Word into Alternate space STDA Store Doubleword into Alternate space LDSTUBA Atomic Load-Store Unsigned Byte into Alternate space SWAPA SWAP register with Alternate space memory ・浮動小数点ステータス・レジスタ(%fsr)に関わる命令は未サポートとした。 LDFSR Load Floating-point State Register STFSR Store Floating-point State Register ・コプロセッサ・ロード命令は未サポートとした。 LDC Load Coprocessor Register LDDC Load Double Coprocessor Register LDCSR Load Coprocessor State Register STC Store Coprocessor STDC Store Double Coprocessor STCSR Store Coprocessor State Register STDCQ Store Double Coprocessor Queue CBcc Branch on Coprocessor Condition Codes Instructions ・4倍精度浮動小数点数に関わる命令は未サポートとした。 STDFQ Store Double Floating-point deferred-trap Queue FiTOq Convert Integer to Quad FqTOi Convert Quad to Integer FsTOq Convert Single to Quad FdTOq Convert Double to Quad FqTOs Convert Quad to Single FqTOd Convert Quad to Double FADDq Add Quad FSUBq Subtract Quad FMULq Multiply Quad FdMULq Multiply Double to Quad FDIVq Divide Quad FCMPq Compare Quad FCMPEq Compare Quad and Exception if Unordered ・TRAP機能に関わる命令は未サポートとした。 TADDccTV Tagged Add, modify icc and Trap on Overflow TSUBccTV Tagged Subtract, modify icc and Trap on Overflow RETT Return from Trap Tcc Trap on Integer Condition Codes Instruction ・レジスタ・ウィンドウ操作に関わる命令は削除した。 SAVE Save caller's window RESTORE Restore caller's window ・ステータス・レジスタ、制御レジスタに関わる命令は一部未サポートとした。 RDASR Read Ancillary State Register (reserved) RDASR (implementation-dependent) RDPSR Read Processor State Register RDWIM Read Window Invalid Mask Register RDTBR Read Trap Base Register WRASR Write Ancillary State Register (reserved) WRASR (implementation-dependent) WRPSR Write Processor State Register WRWIM Write Window Invalid Mask Register WRTBR Write Trap Base Register ・仮想記憶制御、キャッシュ制御に関わる命令は未サポートとした。 STBAR Store Barrier FLUSH Flush Instruction Memory ・平方根演算命令は未サポートとした。 FSQRTs Square Root Single FSQRTd Square Root Double FSQRTq Square Root Quad /// 疑問のある命令 /// ・アトミック操作(非可分操作)命令 単純なswap操作と区別がつかない。非可分操作であることを明示しなくて良いか? LDSTUB Atomic Load-Store Unsigned Byte LDSTUBA Atomic Load-Store Unsigned Byte into Alternate space ・単精度浮動小数点数 F64の浮動小数点数レジスタをF32のSUBREGでアクセスして良いか? ・浮動小数点数⇔整数変換命令 浮動小数点レジスタに整数表現をそのままの形式で置く必要がある。 FiTOs Convert Integer to Single FiTOd Convert Integer to Double FiTOq Convert Integer to Quad FsTOi Convert Single to Integer FdTOi Convert Double to Integer FqTOi Convert Quad to Integer