[llvm-commits] [llvm] r98931 - /llvm/trunk/lib/Target/Blackfin/BlackfinInstrInfo.td
Jakob Stoklund Olesen
stoklund at 2pi.dk
Thu Mar 18 22:14:47 PDT 2010
On Mar 18, 2010, at 9:53 PM, Chris Lattner wrote:
> Author: lattner
> Date: Thu Mar 18 23:53:21 2010
> New Revision: 98931
>
> URL: http://llvm.org/viewvc/llvm-project?rev=98931&view=rev
> Log:
> disable some illegal blackfin patterns. sext from i32 to i32 can never
> match. Jakob, please take a look when you get a chance.
CC is really an i1 register, and it was modeled as such for a while. However, having i1 as a legal type caused many problems, and it was easier to make it a fake i32 register.
Those patterns must have survived the change. It is right to remove them. MOVECC_zext is used by BlackfinInstrInfo::copyRegToReg as a copy instruction now.
The IA64 target had i1 as a legal type, but it couldn't compile basic-i1.ll.
>
> Modified:
> llvm/trunk/lib/Target/Blackfin/BlackfinInstrInfo.td
>
> Modified: llvm/trunk/lib/Target/Blackfin/BlackfinInstrInfo.td
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinInstrInfo.td?rev=98931&r1=98930&r2=98931&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Target/Blackfin/BlackfinInstrInfo.td (original)
> +++ llvm/trunk/lib/Target/Blackfin/BlackfinInstrInfo.td Thu Mar 18 23:53:21 2010
> @@ -610,7 +610,7 @@
>
> def MOVECC_zext : F1<(outs D:$dst), (ins JustCC:$cc),
> "$dst = $cc;",
> - [(set D:$dst, (zext JustCC:$cc))]>;
> + [/*(set D:$dst, (zext JustCC:$cc))*/]>;
>
> def MOVENCC_z : F1<(outs D:$dst), (ins NotCC:$cc),
> "$dst = cc;", []>;
> @@ -859,10 +859,10 @@
> def : Pat<(BfinCall (i32 texternalsym:$dst)),
> (CALLa texternalsym:$dst)>;
>
> -def : Pat<(sext JustCC:$cc),
> - (NEG (MOVECC_zext JustCC:$cc))>;
> -def : Pat<(anyext JustCC:$cc),
> - (MOVECC_zext JustCC:$cc)>;
> +//def : Pat<(sext JustCC:$cc),
> +// (NEG (MOVECC_zext JustCC:$cc))>;
> +//def : Pat<(anyext JustCC:$cc),
> +// (MOVECC_zext JustCC:$cc)>;
> def : Pat<(i16 (zext JustCC:$cc)),
> (EXTRACT_SUBREG (MOVECC_zext JustCC:$cc), bfin_subreg_lo16)>;
> def : Pat<(i16 (sext JustCC:$cc)),
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list