File indexing completed on 2025-02-21 10:05:32
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 case FC_OR:
0018 o1 = &stack[frame[framep]];
0019 o2 = &stack[frame[framep-1]];
0020 POP_FRAME(1);
0021 *((bool *) o2) = *((bool *) o1) || *((bool *) o2);
0022 break;
0023
0024 case FC_AND:
0025 o1 = &stack[frame[framep]];
0026 o2 = &stack[frame[framep-1]];
0027 POP_FRAME(1);
0028 *((bool *) o2) = *((bool *) o1) && *((bool *) o2);
0029 break;
0030
0031 case FC_NOT:
0032 o1 = &stack[frame[framep]];
0033 *((bool *) o1) = ! *((bool *) o1);
0034 break;
0035
0036 case FC_VAND:
0037 {
0038 int n, i, inc_o1;
0039 bool v;
0040
0041 n = frame_size[framep];
0042 o1 = &stack[frame[framep]];
0043 inc_o1 = datatype_size[D_BOOL];
0044
0045 v = TRUE;
0046 for ( i=0 ; i < n ; i++ ) {
0047 v = v && *((bool *) o1);
0048 o1 += inc_o1;
0049 }
0050
0051 POP_FRAME(1);
0052 NEW_FRAME(OP_DTYPE,1,r);
0053
0054 *((OP_TYPE *) r) = v;
0055 }
0056
0057 case FC_VOR:
0058 {
0059 int n, i, inc_o1;
0060 bool v;
0061
0062 n = frame_size[framep];
0063 o1 = &stack[frame[framep]];
0064 inc_o1 = datatype_size[D_BOOL];
0065
0066 v = FALSE;
0067 for ( i=0 ; i < n ; i++ ) {
0068 v = v || *((bool *) o1);
0069 o1 += inc_o1;
0070 }
0071
0072 POP_FRAME(1);
0073 NEW_FRAME(OP_DTYPE,1,r);
0074
0075 *((OP_TYPE *) r) = v;
0076 break;
0077 }