This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch] never have sign_extract as an lvalue
- From: Steven Bosscher <stevenb at suse dot de>
- To: gcc-patches at gcc dot gnu dot org
- Cc: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Date: Thu, 6 Jan 2005 01:02:23 +0100
- Subject: Re: [patch] never have sign_extract as an lvalue
- Organization: SUSE Labs
- References: <200501052345.j05NjU4t001005@hiauly1.hia.nrc.ca>
On Thursday 06 January 2005 00:45, John David Anglin wrote:
> > I have also verified by inspection that there are no targets that
> > define insns with a sign_extract as the set destination.
>
> Did you look@vax.md?
My favorite target, so of course. :-)
sign_extract in vax.md:
(define_insn ""
[(set (match_operand:SI 0 "nonimmediate_operand" "=g")
(sign_extract:SI (match_operand:SI 1 "register_operand" "ro")
(match_operand:QI 2 "const_int_operand" "n")
(match_operand:SI 3 "const_int_operand" "n")))]
(define_insn ""
[(set (cc0)
(compare
(sign_extract:SI (match_operand:SI 0 "register_operand" "r")
(match_operand:QI 1 "general_operand" "g")
(match_operand:SI 2 "general_operand" "g"))
(match_operand:SI 3 "general_operand" "g")))]
(define_insn ""
[(set (match_operand:SI 0 "nonimmediate_operand" "=g")
(sign_extract:SI (match_operand:SI 1 "register_operand" "ro")
(match_operand:QI 2 "general_operand" "g")
(match_operand:SI 3 "general_operand" "g")))]
(define_insn ""
[(set (cc0)
(compare
(sign_extract:SI (match_operand:QI 0 "memory_operand" "m")
(match_operand:QI 1 "general_operand" "g")
(match_operand:SI 2 "general_operand" "g"))
(match_operand:SI 3 "general_operand" "g")))]
(define_insn "extv"
[(set (match_operand:SI 0 "nonimmediate_operand" "=g")
(sign_extract:SI (match_operand:QI 1 "memory_operand" "m")
(match_operand:QI 2 "general_operand" "g")
(match_operand:SI 3 "general_operand" "g")))]
I looked at *all* machine descriptions. I'm pretty sure I haven't
overlooked any.
Gr.
Steven