|
3965 | 3965 |
|
3966 | 3966 | (define_insn "get_fpscr_nzcvqc" |
3967 | 3967 | [(set (match_operand:SI 0 "register_operand" "=r") |
3968 | | - (unspec_volatile:SI [(reg:SI VFPCC_REGNUM)] UNSPEC_GET_FPSCR_NZCVQC))] |
| 3968 | + (unspec:SI [(reg:SI VFPCC_REGNUM)] UNSPEC_GET_FPSCR_NZCVQC))] |
3969 | 3969 | "TARGET_HAVE_MVE" |
3970 | 3970 | "vmrs\\t%0, FPSCR_nzcvqc" |
3971 | 3971 | [(set_attr "type" "mve_move")]) |
3972 | 3972 |
|
3973 | 3973 | (define_insn "set_fpscr_nzcvqc" |
3974 | 3974 | [(set (reg:SI VFPCC_REGNUM) |
3975 | | - (unspec_volatile:SI [(match_operand:SI 0 "register_operand" "r")] |
| 3975 | + (unspec:SI [(match_operand:SI 0 "register_operand" "r")] |
3976 | 3976 | VUNSPEC_SET_FPSCR_NZCVQC))] |
3977 | 3977 | "TARGET_HAVE_MVE" |
3978 | 3978 | "vmsr\\tFPSCR_nzcvqc, %0" |
|
3988 | 3988 | (match_operand:V4SI 2 "s_register_operand" "w")] |
3989 | 3989 | VxCIQ)) |
3990 | 3990 | (set (reg:SI VFPCC_REGNUM) |
3991 | | - (unspec:SI [(const_int 0)] |
3992 | | - VxCIQ)) |
| 3991 | + (unspec:SI [(match_dup 1) |
| 3992 | + (match_dup 2)] |
| 3993 | + <VxCIQ_carry>)) |
3993 | 3994 | ] |
3994 | 3995 | "TARGET_HAVE_MVE" |
3995 | 3996 | "<mve_insn>.i32\t%q0, %q1, %q2" |
|
4009 | 4010 | (match_operand:V4BI 4 "vpr_register_operand" "Up")] |
4010 | 4011 | VxCIQ_M)) |
4011 | 4012 | (set (reg:SI VFPCC_REGNUM) |
4012 | | - (unspec:SI [(const_int 0)] |
4013 | | - VxCIQ_M)) |
| 4013 | + (unspec:SI [(match_dup 1) |
| 4014 | + (match_dup 2) |
| 4015 | + (match_dup 3) |
| 4016 | + (match_dup 4)] |
| 4017 | + <VxCIQ_M_carry>)) |
4014 | 4018 | ] |
4015 | 4019 | "TARGET_HAVE_MVE" |
4016 | 4020 | "vpst\;<mve_insn>t.i32\t%q0, %q2, %q3" |
|
4025 | 4029 | (define_insn "@mve_<mve_insn>q_<supf>v4si" |
4026 | 4030 | [(set (match_operand:V4SI 0 "s_register_operand" "=w") |
4027 | 4031 | (unspec:V4SI [(match_operand:V4SI 1 "s_register_operand" "w") |
4028 | | - (match_operand:V4SI 2 "s_register_operand" "w")] |
| 4032 | + (match_operand:V4SI 2 "s_register_operand" "w") |
| 4033 | + (reg:SI VFPCC_REGNUM)] |
4029 | 4034 | VxCQ)) |
4030 | 4035 | (set (reg:SI VFPCC_REGNUM) |
4031 | | - (unspec:SI [(reg:SI VFPCC_REGNUM)] |
4032 | | - VxCQ)) |
| 4036 | + (unspec:SI [(match_dup 1) |
| 4037 | + (match_dup 2) |
| 4038 | + (reg:SI VFPCC_REGNUM)] |
| 4039 | + <VxCQ_carry>)) |
4033 | 4040 | ] |
4034 | 4041 | "TARGET_HAVE_MVE" |
4035 | 4042 | "<mve_insn>.i32\t%q0, %q1, %q2" |
|
4047 | 4054 | (unspec:V4SI [(match_operand:V4SI 1 "s_register_operand" "0") |
4048 | 4055 | (match_operand:V4SI 2 "s_register_operand" "w") |
4049 | 4056 | (match_operand:V4SI 3 "s_register_operand" "w") |
4050 | | - (match_operand:V4BI 4 "vpr_register_operand" "Up")] |
| 4057 | + (match_operand:V4BI 4 "vpr_register_operand" "Up") |
| 4058 | + (reg:SI VFPCC_REGNUM)] |
4051 | 4059 | VxCQ_M)) |
4052 | 4060 | (set (reg:SI VFPCC_REGNUM) |
4053 | | - (unspec:SI [(reg:SI VFPCC_REGNUM)] |
4054 | | - VxCQ_M)) |
| 4061 | + (unspec:SI [(match_dup 1) |
| 4062 | + (match_dup 2) |
| 4063 | + (match_dup 3) |
| 4064 | + (match_dup 4) |
| 4065 | + (reg:SI VFPCC_REGNUM)] |
| 4066 | + <VxCQ_M_carry>)) |
4055 | 4067 | ] |
4056 | 4068 | "TARGET_HAVE_MVE" |
4057 | 4069 | "vpst\;<mve_insn>t.i32\t%q0, %q2, %q3" |
|
0 commit comments