cghwreg.h

来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 351 行 · 第 1/2 页

H
351
字号
#define    HW_D_5(a,b,c,d,e)    {HW_Op5(a,b,c,d,e,+)}
#define HW_NotD_5(a,b,c,d,e)    {HW_Op5(a,b,c,d,e,~)}

#define    HW_D( x )       HW_D_1( x )
#define HW_NotD( x )    HW_NotD_1( x )

#define HW_CEqual( a, c )      (\
                               HW_0(    ( (a)._0 == (HWT)__0(c) ) )\
                               HW_1( && ( (a)._1 == (HWT)__1(c) ) )\
                               HW_2( && ( (a)._2 == (HWT)__2(c) ) )\
                               HW_3( && ( (a)._3 == (HWT)__3(c) ) )\
                               HW_4( && ( (a)._4 == (HWT)__4(c) ) )\
                               HW_5( && ( (a)._5 == (HWT)__5(c) ) )\
                               HW_6( && ( (a)._6 == (HWT)__6(c) ) )\
                               HW_7( && ( (a)._7 == (HWT)__7(c) ) )\
                               )
#define HW_COvlap( a, c )      (\
                               HW_0(    ( (a)._0 & (HWT)__0(c) ) != 0 )\
                               HW_1( || ( (a)._1 & (HWT)__1(c) ) != 0 )\
                               HW_2( || ( (a)._2 & (HWT)__2(c) ) != 0 )\
                               HW_3( || ( (a)._3 & (HWT)__3(c) ) != 0 )\
                               HW_4( || ( (a)._4 & (HWT)__4(c) ) != 0 )\
                               HW_5( || ( (a)._5 & (HWT)__5(c) ) != 0 )\
                               HW_6( || ( (a)._6 & (HWT)__6(c) ) != 0 )\
                               HW_7( || ( (a)._7 & (HWT)__7(c) ) != 0 )\
                               )
#define HW_CSubset( a, c )     (\
                               HW_0(    ( ( (a)._0&(HWT)__0(c) )==(HWT)__0(c) ) )\
                               HW_1( && ( ( (a)._1&(HWT)__1(c) )==(HWT)__1(c) ) )\
                               HW_2( && ( ( (a)._2&(HWT)__2(c) )==(HWT)__2(c) ) )\
                               HW_3( && ( ( (a)._3&(HWT)__3(c) )==(HWT)__3(c) ) )\
                               HW_4( && ( ( (a)._4&(HWT)__4(c) )==(HWT)__4(c) ) )\
                               HW_5( && ( ( (a)._5&(HWT)__5(c) )==(HWT)__5(c) ) )\
                               HW_6( && ( ( (a)._6&(HWT)__6(c) )==(HWT)__6(c) ) )\
                               HW_7( && ( ( (a)._7&(HWT)__7(c) )==(HWT)__7(c) ) )\
                               )

#define HW_CAsgn( dst, src )   {\
                               HW_0( (dst)._0 = (HWT)__0(src); )\
                               HW_1( (dst)._1 = (HWT)__1(src); ) \
                               HW_2( (dst)._2 = (HWT)__2(src); ) \
                               HW_3( (dst)._3 = (HWT)__3(src); ) \
                               HW_4( (dst)._4 = (HWT)__4(src); ) \
                               HW_5( (dst)._5 = (HWT)__5(src); ) \
                               HW_6( (dst)._6 = (HWT)__6(src); ) \
                               HW_7( (dst)._7 = (HWT)__7(src); ) \
                               }
#define HW_CTurnOn( a, c )     {\
                               HW_0( (a)._0 |= (HWT)__0(c); )\
                               HW_1( (a)._1 |= (HWT)__1(c); )\
                               HW_2( (a)._2 |= (HWT)__2(c); )\
                               HW_3( (a)._3 |= (HWT)__3(c); )\
                               HW_4( (a)._4 |= (HWT)__4(c); )\
                               HW_5( (a)._5 |= (HWT)__5(c); )\
                               HW_6( (a)._6 |= (HWT)__6(c); )\
                               HW_7( (a)._7 |= (HWT)__7(c); )\
                               }
#define HW_CTurnOff( a, c )    {\
                               HW_0( (a)._0 &= ~(HWT)__0(c); )\
                               HW_1( (a)._1 &= ~(HWT)__1(c); )\
                               HW_2( (a)._2 &= ~(HWT)__2(c); )\
                               HW_3( (a)._3 &= ~(HWT)__3(c); )\
                               HW_4( (a)._4 &= ~(HWT)__4(c); )\
                               HW_5( (a)._5 &= ~(HWT)__5(c); )\
                               HW_6( (a)._6 &= ~(HWT)__6(c); )\
                               HW_7( (a)._7 &= ~(HWT)__7(c); )\
                               }
#define HW_COnlyOn( a, c )     {\
                               HW_0( (a)._0 &= (HWT)__0(c); ) \
                               HW_1( (a)._1 &= (HWT)__1(c); )\
                               HW_2( (a)._2 &= (HWT)__2(c); )\
                               HW_3( (a)._3 &= (HWT)__3(c); )\
                               HW_4( (a)._4 &= (HWT)__4(c); )\
                               HW_5( (a)._5 &= (HWT)__5(c); )\
                               HW_6( (a)._6 &= (HWT)__6(c); )\
                               HW_7( (a)._7 &= (HWT)__7(c); )\
                               }

#define HW_Equal( a, b )       (\
                               HW_0(    ( (a)._0 == (b)._0 ) )\
                               HW_1( && ( (a)._1 == (b)._1 ) )\
                               HW_2( && ( (a)._2 == (b)._2 ) )\
                               HW_3( && ( (a)._3 == (b)._3 ) )\
                               HW_4( && ( (a)._4 == (b)._4 ) )\
                               HW_5( && ( (a)._5 == (b)._5 ) )\
                               HW_6( && ( (a)._6 == (b)._6 ) )\
                               HW_7( && ( (a)._7 == (b)._7 ) )\
                               )
#define HW_Ovlap( a, b )       (\
                               HW_0(    ( (a)._0 & (b)._0 ) != 0 )\
                               HW_1( || ( (a)._1 & (b)._1 ) != 0 )\
                               HW_2( || ( (a)._2 & (b)._2 ) != 0 )\
                               HW_3( || ( (a)._3 & (b)._3 ) != 0 )\
                               HW_4( || ( (a)._4 & (b)._4 ) != 0 )\
                               HW_5( || ( (a)._5 & (b)._5 ) != 0 )\
                               HW_6( || ( (a)._6 & (b)._6 ) != 0 )\
                               HW_7( || ( (a)._7 & (b)._7 ) != 0 )\
                               )
#define HW_Subset( a, b )      (\
                               HW_0(    ( ( (a)._0 & (b)._0 )==(b)._0 ) )\
                               HW_1( && ( ( (a)._1 & (b)._1 )==(b)._1 ) )\
                               HW_2( && ( ( (a)._2 & (b)._2 )==(b)._2 ) )\
                               HW_3( && ( ( (a)._3 & (b)._3 )==(b)._3 ) )\
                               HW_4( && ( ( (a)._4 & (b)._4 )==(b)._4 ) )\
                               HW_5( && ( ( (a)._5 & (b)._5 )==(b)._5 ) )\
                               HW_6( && ( ( (a)._6 & (b)._6 )==(b)._6 ) )\
                               HW_7( && ( ( (a)._7 & (b)._7 )==(b)._7 ) )\
                               )

#define HW_Asgn( a, b )        {\
                               HW_0( (a)._0 = (b)._0; )\
                               HW_1( (a)._1 = (b)._1; )\
                               HW_2( (a)._2 = (b)._2; )\
                               HW_3( (a)._3 = (b)._3; )\
                               HW_4( (a)._4 = (b)._4; )\
                               HW_5( (a)._5 = (b)._5; )\
                               HW_6( (a)._6 = (b)._6; )\
                               HW_7( (a)._7 = (b)._7; )\
                               }
#define HW_TurnOn( a, b )      {\
                               HW_0( (a)._0 |= (b)._0; )\
                               HW_1( (a)._1 |= (b)._1; )\
                               HW_2( (a)._2 |= (b)._2; )\
                               HW_3( (a)._3 |= (b)._3; )\
                               HW_4( (a)._4 |= (b)._4; )\
                               HW_5( (a)._5 |= (b)._5; )\
                               HW_6( (a)._6 |= (b)._6; )\
                               HW_7( (a)._7 |= (b)._7; )\
                               }
#define HW_TurnOff( a, b )     {\
                               HW_0( (a)._0 &= ~(b)._0; )\
                               HW_1( (a)._1 &= ~(b)._1; )\
                               HW_2( (a)._2 &= ~(b)._2; )\
                               HW_3( (a)._3 &= ~(b)._3; )\
                               HW_4( (a)._4 &= ~(b)._4; )\
                               HW_5( (a)._5 &= ~(b)._5; )\
                               HW_6( (a)._6 &= ~(b)._6; )\
                               HW_7( (a)._7 &= ~(b)._7; )\
                               }
#define HW_OnlyOn( a, b )      {\
                               HW_0( (a)._0 &= (b)._0; )\
                               HW_1( (a)._1 &= (b)._1; )\
                               HW_2( (a)._2 &= (b)._2; )\
                               HW_3( (a)._3 &= (b)._3; )\
                               HW_4( (a)._4 &= (b)._4; )\
                               HW_5( (a)._5 &= (b)._5; )\
                               HW_6( (a)._6 &= (b)._6; )\
                               HW_7( (a)._7 &= (b)._7; )\
                               }

#ifdef HW_DEFINE_VARS
    #define HW_DEFINE_GLOBAL_CONST( x ) hw_reg_set x = \
                                        {\
                                        HW_0(          __0(x) )\
                                        HW_1( HW_COMMA __1(x) )\
                                        HW_2( HW_COMMA __2(x) )\
                                        HW_3( HW_COMMA __3(x) )\
                                        HW_4( HW_COMMA __4(x) )\
                                        HW_5( HW_COMMA __5(x) )\
                                        HW_6( HW_COMMA __6(x) )\
                                        HW_7( HW_COMMA __7(x) )\
                                        }
#else
    #define HW_DEFINE_GLOBAL_CONST( x ) extern hw_reg_set x
#endif

#define HW_ITER( x ) HW_0(   x( 0 ) )\
                     HW_1( ; x( 1 ) )\
                     HW_2( ; x( 2 ) )\
                     HW_3( ; x( 3 ) )\
                     HW_4( ; x( 4 ) )\
                     HW_5( ; x( 5 ) )\
                     HW_6( ; x( 6 ) )\
                     HW_7( ; x( 7 ) )

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?