00001 #ifndef chfdef_h 00002 #define chddef_h 00003 00004 struct _chfdef { 00005 struct _chfdef1 *chf_l_sigarglst; 00006 int chfdef_$_fill_1; 00007 struct _chfdef2 *chf_l_mcharglst; 00008 }; 00009 00010 struct _chfdef1 { 00011 union { 00012 int chf_is_sig_args; 00013 int chf_l_sig_args; 00014 }; 00015 union { 00016 int chf_is_sig_name; 00017 int chf_l_sig_name; 00018 }; 00019 union { 00020 int chf_is_sig_arg1; 00021 int chf_l_sig_arg1; 00022 }; 00023 }; 00024 00025 #define CHF_M_FPREGS_VALID 0x1 00026 00027 struct _chfdef2 { 00028 union { 00029 long long chf_q_mch_args; 00030 struct { 00031 int chf_is_mch_args; 00032 union { 00033 int chf_is_mch_flags; 00034 struct { 00035 unsigned chf_v_fpregs_valid : 1; 00036 unsigned chf_v_fill_64_ : 7; 00037 }; 00038 }; 00039 }; 00040 }; 00041 long long chf_q_mch_frame; 00042 union { 00043 long long chf_q_mch_depth; 00044 struct { 00045 int chf_is_mch_depth; 00046 int chf_is_mch_resvd1; 00047 }; 00048 }; 00049 long long chf_q_mch_daddr; 00050 long long chf_q_mch_esf_addr; 00051 long long chf_q_mch_sig_addr; 00052 long long chf_q_mch_savr0; 00053 long long chf_q_mch_savr1; 00054 long long chf_q_mch_savr16; 00055 long long chf_q_mch_savr17; 00056 long long chf_q_mch_savr18; 00057 long long chf_q_mch_savr19; 00058 long long chf_q_mch_savr20; 00059 long long chf_q_mch_savr21; 00060 long long chf_q_mch_savr22; 00061 long long chf_q_mch_savr23; 00062 long long chf_q_mch_savr24; 00063 long long chf_q_mch_savr25; 00064 long long chf_q_mch_savr26; 00065 long long chf_q_mch_savr27; 00066 long long chf_q_mch_savr28; 00067 long long chf_q_mch_savf0; 00068 long long chf_q_mch_savf1; 00069 long long chf_q_mch_savf10; 00070 long long chf_q_mch_savf11; 00071 long long chf_q_mch_savf12; 00072 long long chf_q_mch_savf13; 00073 long long chf_q_mch_savf14; 00074 long long chf_q_mch_savf15; 00075 long long chf_q_mch_savf16; 00076 long long chf_q_mch_savf17; 00077 long long chf_q_mch_savf18; 00078 long long chf_q_mch_savf19; 00079 long long chf_q_mch_savf20; 00080 long long chf_q_mch_savf21; 00081 long long chf_q_mch_savf22; 00082 long long chf_q_mch_savf23; 00083 long long chf_q_mch_savf24; 00084 long long chf_q_mch_savf25; 00085 long long chf_q_mch_savf26; 00086 long long chf_q_mch_savf27; 00087 long long chf_q_mch_savf28; 00088 long long chf_q_mch_savf29; 00089 long long chf_q_mch_savf30; 00090 void *chf_ph_mch_sig64_addr; 00091 }; 00092 00093 #define CHF_M_CALEXT_CANCEL 0x1 00094 #define CHF_M_CALEXT_LAST 0x2 00095 #define CHF_K_CALEXT_LENGTH 16 00096 #define CHF_C_CALEXT_LENGTH 16 00097 00098 struct _chfdef3 { 00099 int chf_l_calext_link; 00100 int chf_l_calext_address; 00101 union { 00102 unsigned int chf_l_calext_flags; 00103 struct { 00104 unsigned chf_v_calext_cancel : 1; 00105 unsigned chf_v_calext_last : 1; 00106 unsigned chf_v_fill_65_ : 6; 00107 }; 00108 }; 00109 unsigned int chf_l_calext_reserved; 00110 }; 00111 00112 struct _chfdef6 { 00113 union { 00114 int chf64_l_sig_args; 00115 struct { 00116 short int chf64_w_sig_arg_count; 00117 short int chf64_w_sig_msg_options; 00118 }; 00119 }; 00120 int chf64_l_signal64; 00121 long long chf64_q_sig_name; 00122 long long chf64_q_sig_arg1; 00123 }; 00124 00125 #define chf_arglist _chfdef 00126 #define chf_signal_array _chfdef1 00127 #define chf_mech_array _chfdef2 00128 #define chf64_signal_array _chfdef6 00129 #define CHF_ARGLIST CHFDEF 00130 #define CHF_SIGNAL_ARRAY CHFDEF1 00131 #define CHF_MECH_ARRAY CHFDEF2 00132 #define CHF64_SIGNAL_ARRAY CHFDEF6 00133 00134 #endif 00135 00136