Home | History | Annotate | Download | only in alpha

Lines Matching defs:opint

6738    with an 8-bit output vector.  OPINT contains the integer operands; bit N
6739 of OP_CONST is set if OPINT[N] is valid. */
6742 alpha_fold_builtin_cmpbge (unsigned HOST_WIDE_INT opint[], long op_const)
6749 unsigned HOST_WIDE_INT c0 = (opint[0] >> (i * 8)) & 0xff;
6750 unsigned HOST_WIDE_INT c1 = (opint[1] >> (i * 8)) & 0xff;
6756 else if (op_const == 2 && opint[1] == 0)
6766 OP contains the tree operands; OPINT contains the extracted integer values.
6767 Bit N of OP_CONST it set if OPINT[N] is valid. OP may be null if only
6768 OPINT may be considered. */
6771 alpha_fold_builtin_zapnot (tree *op, unsigned HOST_WIDE_INT opint[],
6780 if ((opint[1] >> i) & 1)
6784 return build_int_cst (alpha_dimode_u, opint[0] & mask);
6790 else if ((op_const & 1) && opint[0] == 0)
6798 alpha_fold_builtin_extxx (tree op[], unsigned HOST_WIDE_INT opint[],
6809 loc = opint[1] & 7;
6816 unsigned HOST_WIDE_INT temp = opint[0];
6821 opint[0] = temp;
6829 opint[1] = bytemask;
6830 return alpha_fold_builtin_zapnot (zap_op, opint, zap_const);
6836 alpha_fold_builtin_insxx (tree op[], unsigned HOST_WIDE_INT opint[],
6840 if ((op_const & 1) && opint[0] == 0)
6848 loc = opint[1] & 7;
6851 temp = opint[0];
6870 opint[0] = temp;
6871 opint[1] = bytemask;
6872 return alpha_fold_builtin_zapnot (zap_op, opint, op_const);
6879 alpha_fold_builtin_mskxx (tree op[], unsigned HOST_WIDE_INT opint[],
6887 loc = opint[1] & 7;
6893 opint[1] = bytemask ^ 0xff;
6896 return alpha_fold_builtin_zapnot (op, opint, op_const);
6909 alpha_fold_builtin_perr (unsigned HOST_WIDE_INT opint[], long op_const)
6919 unsigned HOST_WIDE_INT a = (opint[0] >> (i * 8)) & 0xff;
6920 unsigned HOST_WIDE_INT b = (opint[1] >> (i * 8)) & 0xff;
6931 alpha_fold_builtin_pklb (unsigned HOST_WIDE_INT opint[], long op_const)
6938 temp = opint[0] & 0xff;
6939 temp |= (opint[0] >> 24) & 0xff00;
6945 alpha_fold_builtin_pkwb (unsigned HOST_WIDE_INT opint[], long op_const)
6952 temp = opint[0] & 0xff;
6953 temp |= (opint[0] >> 8) & 0xff00;
6954 temp |= (opint[0] >> 16) & 0xff0000;
6955 temp |= (opint[0] >> 24) & 0xff000000;
6961 alpha_fold_builtin_unpkbl (unsigned HOST_WIDE_INT opint[], long op_const)
6968 temp = opint[0] & 0xff;
6969 temp |= (opint[0] & 0xff00) << 24;
6975 alpha_fold_builtin_unpkbw (unsigned HOST_WIDE_INT opint[], long op_const)
6982 temp = opint[0] & 0xff;
6983 temp |= (opint[0] & 0x0000ff00) << 8;
6984 temp |= (opint[0] & 0x00ff0000) << 16;
6985 temp |= (opint[0] & 0xff000000) << 24;
6991 alpha_fold_builtin_cttz (unsigned HOST_WIDE_INT opint[], long op_const)
6998 if (opint[0] == 0)
7001 temp = exact_log2 (opint[0] & -opint[0]);
7007 alpha_fold_builtin_ctlz (unsigned HOST_WIDE_INT opint[], long op_const)
7014 if (opint[0] == 0)
7017 temp = 64 - floor_log2 (opint[0]) - 1;
7023 alpha_fold_builtin_ctpop (unsigned HOST_WIDE_INT opint[], long op_const)
7030 op = opint[0];
7044 unsigned HOST_WIDE_INT opint[MAX_ARGS];
7057 opint[i] = 0;
7061 opint[i] = int_cst_value (arg);
7068 return alpha_fold_builtin_cmpbge (opint, op_const);
7071 return alpha_fold_builtin_extxx (op, opint, op_const, 0x01, false);
7073 return alpha_fold_builtin_extxx (op, opint, op_const, 0x03, false);
7075 return alpha_fold_builtin_extxx (op, opint, op_const, 0x0f, false);
7077 return alpha_fold_builtin_extxx (op, opint, op_const, 0xff, false);
7079 return alpha_fold_builtin_extxx (op, opint, op_const, 0x03, true);
7081 return alpha_fold_builtin_extxx (op, opint, op_const, 0x0f, true);
7083 return alpha_fold_builtin_extxx (op, opint, op_const, 0xff, true);
7086 return alpha_fold_builtin_insxx (op, opint, op_const, 0x01, false);
7088 return alpha_fold_builtin_insxx (op, opint, op_const, 0x03, false);
7090 return alpha_fold_builtin_insxx (op, opint, op_const, 0x0f, false);
7092 return alpha_fold_builtin_insxx (op, opint, op_const, 0xff, false);
7094 return alpha_fold_builtin_insxx (op, opint, op_const, 0x03, true);
7096 return alpha_fold_builtin_insxx (op, opint, op_const, 0x0f, true);
7098 return alpha_fold_builtin_insxx (op, opint, op_const, 0xff, true);
7101 return alpha_fold_builtin_mskxx (op, opint, op_const, 0x01, false);
7103 return alpha_fold_builtin_mskxx (op, opint, op_const, 0x03, false);
7105 return alpha_fold_builtin_mskxx (op, opint, op_const, 0x0f, false);
7107 return alpha_fold_builtin_mskxx (op, opint, op_const, 0xff, false);
7109 return alpha_fold_builtin_mskxx (op, opint, op_const, 0x03, true);
7111 return alpha_fold_builtin_mskxx (op, opint, op_const, 0x0f, true);
7113 return alpha_fold_builtin_mskxx (op, opint, op_const, 0xff, true);
7116 opint[1] ^= 0xff;
7119 return alpha_fold_builtin_zapnot (op, opint, op_const);
7139 return alpha_fold_builtin_perr (opint, op_const);
7141 return alpha_fold_builtin_pklb (opint, op_const);
7143 return alpha_fold_builtin_pkwb (opint, op_const);
7145 return alpha_fold_builtin_unpkbl (opint, op_const);
7147 return alpha_fold_builtin_unpkbw (opint, op_const);
7150 return alpha_fold_builtin_cttz (opint, op_const);
7152 return alpha_fold_builtin_ctlz (opint, op_const);
7154 return alpha_fold_builtin_ctpop (opint, op_const);