12.38 __sxtb16 コンパイラ組み込み関数

このコンパイラ組み込み関数を使用して、コンパイラによって生成される命令ストリームに SXTB16 命令を挿入します。

オペランドから 2 つの 8 ビット値を抽出し、それぞれ 16 ビットに符号拡張することができます。

構文

unsigned int __sxtb16(unsigned int val )
val [7:0] と val [23:16] は、符号拡張される 2 つの 8 ビット値を保持します。

戻り値

__sxtb16 コンパイラ組み込み関数は、8 ビット値を 16 ビット値に符号拡張して返します。

unsigned int sign_extend(unsigned int val)
{
    unsigned int res;
    res = __sxtb16(val1,val2); /* res[15:0] = SignExtended(val[7:0]
                                  res[31:16] = SignExtended(val[23:16]
                                */
    return res;
}
関連する参考文書
10.153 ARMv6 SIMD コンパイラ組み込み関数
関連情報
SXTB16
ARM 命令と Thumb 命令の概要
非機密扱いPDF file icon PDF 版ARM DUI0472LJ
Copyright © 2010-2015 ARM.All rights reserved.