This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] RTL docs update
Richard Sandiford wrote:
> ""Seongbae Park (박성배, 朴成培)"" <seongbae.park@gmail.com> writes:
>> + FIXME: Replace all uses of UNSPEC that appears by itself or as a component
>> + of a PARALLEL with USE.
>
> I'm still not convinced by this. How should SPU's:
>
> (define_insn "iprefetch"
> [(unspec [(const_int 0)] UNSPEC_IPREFETCH)]
> ""
> "hbrp"
> [(set_attr "type" "iprefetch")])
>
> be written in that case? What should it use or clobber?
> I suppose ports have been known to use top-level CONST_INTs
> to implement a "nop" pattern, e.g. MIPS's:
>
> (define_insn "nop"
> [(const_int 0)]
> ""
> "%(nop%)"
> [(set_attr "type" "nop")
> (set_attr "mode" "none")])
>
> but I think it would be cleaner to move _towards_ rather than
> away from UNSPECs in this case.
Fully agreed. You certainly can't move away from UNSPEC if you have
multiple such patterns in your backend - it's not possible to
distinguish one USE from another.
Please revert that part of the documentation change.
Bernd
--
This footer brought to you by insane German lawmakers.
Analog Devices GmbH Wilhelm-Wagenfeld-Str. 6 80807 Muenchen
Sitz der Gesellschaft Muenchen, Registergericht Muenchen HRB 40368
Geschaeftsfuehrer Thomas Wessel, William A. Martin, Margaret Seif