構造体 テンプレート Onikiri::AlphaLinux::Operation::AlphaMskxh< Type, TSrc1, TSrc2 >

#include <AlphaOperation.h>

すべてのメンバ一覧

Public メソッド

u64 operator() (EmulatorUtility::OpEmulationState *opState) const


説明

template<typename Type, typename TSrc1, typename TSrc2>
struct Onikiri::AlphaLinux::Operation::AlphaMskxh< Type, TSrc1, TSrc2 >

AlphaOperation.h325 行で定義されています。


関数

template<typename Type, typename TSrc1, typename TSrc2>
u64 Onikiri::AlphaLinux::Operation::AlphaMskxh< Type, TSrc1, TSrc2 >::operator() ( EmulatorUtility::OpEmulationState opState  )  const [inline]

AlphaOperation.h327 行で定義されています。

参照先 Type.

00328     {
00329         u64 lhs = TSrc1()(opState);
00330         u64 rhs = TSrc2()(opState);
00331 
00332         int shift_cnt = static_cast<int>( (rhs & 0x7) << 3 );
00333         u64 bit_mask;
00334 
00335         if (shift_cnt + sizeof(Type)*8 > 64 ) {
00336             bit_mask = ~(u64)0 << (shift_cnt + sizeof(Type)*8 - 64);
00337         }
00338         else {
00339             bit_mask = ~(u64)0;
00340         }
00341 
00342         u64 result;
00343         result = lhs & bit_mask;
00344 
00345         return result;
00346     }


この構造体の説明は次のファイルから生成されました:
Onikiri2に対してTue Jun 18 15:24:38 2013に生成されました。  doxygen 1.4.7