Add zero extension (pseudo-)ops.
[qemu] / target-cris / translate.c
index 72eb48c..89a0533 100644 (file)
@@ -1165,11 +1165,10 @@ static inline void t_gen_sext(TCGv d, TCGv s, int size)
 
 static inline void t_gen_zext(TCGv d, TCGv s, int size)
 {
-       /* TCG-FIXME: this is not optimal. Many archs have fast zext insns.  */
        if (size == 1)
-               tcg_gen_andi_i32(d, s, 0xff);
+               tcg_gen_ext8u_i32(d, s);
        else if (size == 2)
-               tcg_gen_andi_i32(d, s, 0xffff);
+               tcg_gen_ext16u_i32(d, s);
        else
                tcg_gen_mov_tl(d, s);
 }