v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v0.AddArg(x)
v0.AuxInt = c
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v0.AddArg(x)
v0.AuxInt = c
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v0.AddArg(x)
v0.AuxInt = c
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v0.AddArg(x)
v0.AuxInt = c
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
t := v.Type
x := v.Args[0]
mem := v.Args[1]
+ v.Type = t
v.Op = OpAMD64MOVQconvert
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
v.AddArg(mem)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpSignExt8to16, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpSignExt8to16, config.fe.TypeInt16())
v0.AddArg(x)
- v0.Type = config.fe.TypeInt16()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpSignExt8to16, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpSignExt8to16, config.fe.TypeInt16())
v1.AddArg(y)
- v1.Type = config.fe.TypeInt16()
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpZeroExt8to16, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpZeroExt8to16, config.fe.TypeUInt16())
v0.AddArg(x)
- v0.Type = config.fe.TypeUInt16()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpZeroExt8to16, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpZeroExt8to16, config.fe.TypeUInt16())
v1.AddArg(y)
- v1.Type = config.fe.TypeUInt16()
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(idx)
v0.AddArg(len)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64TESTQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64TESTQ, TypeFlags)
v0.AddArg(p)
v0.AddArg(p)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(idx)
v0.AddArg(len)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
v0.AddArg(y)
v0.AddArg(x)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
v0.AddArg(y)
v0.AddArg(x)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
v0.AddArg(y)
v0.AddArg(x)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
v0.AddArg(y)
v0.AddArg(x)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
t := v.Type
x := v.Args[0]
c := v.AuxInt
+ v.Type = t
v.Op = OpAMD64ROLWconst
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AuxInt = c & 15
v.AddArg(x)
return true
t := v.Type
x := v.Args[0]
c := v.AuxInt
+ v.Type = t
v.Op = OpAMD64ROLLconst
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AuxInt = c & 31
v.AddArg(x)
return true
t := v.Type
x := v.Args[0]
c := v.AuxInt
+ v.Type = t
v.Op = OpAMD64ROLQconst
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AuxInt = c & 63
v.AddArg(x)
return true
t := v.Type
x := v.Args[0]
c := v.AuxInt
+ v.Type = t
v.Op = OpAMD64ROLBconst
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AuxInt = c & 7
v.AddArg(x)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHLB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHLB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
sym := v.Args[0].Aux
ptr := v.Args[0].Args[0]
mem := v.Args[0].Args[1]
- v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVBQSXload, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVBQSXload, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
v0.AuxInt = off
v0.Aux = sym
v0.AddArg(ptr)
sym := v.Args[0].Aux
ptr := v.Args[0].Args[0]
mem := v.Args[0].Args[1]
- v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVBQZXload, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVBQZXload, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
v0.AuxInt = off
v0.Aux = sym
v0.AddArg(ptr)
sym := v.Args[0].Aux
ptr := v.Args[0].Args[0]
mem := v.Args[0].Args[1]
- v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVLQSXload, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVLQSXload, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
v0.AuxInt = off
v0.Aux = sym
v0.AddArg(ptr)
sym := v.Args[0].Aux
ptr := v.Args[0].Args[0]
mem := v.Args[0].Args[1]
- v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVLQZXload, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVLQZXload, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
v0.AuxInt = off
v0.Aux = sym
v0.AddArg(ptr)
sym := v.Args[0].Aux
ptr := v.Args[0].Args[0]
mem := v.Args[0].Args[1]
- v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVWQSXload, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVWQSXload, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
v0.AuxInt = off
v0.Aux = sym
v0.AddArg(ptr)
sym := v.Args[0].Aux
ptr := v.Args[0].Args[0]
mem := v.Args[0].Args[1]
- v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVWQZXload, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpAMD64MOVWQZXload, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
v0.AuxInt = off
v0.Aux = sym
v0.AddArg(ptr)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpSignExt8to16, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpSignExt8to16, config.fe.TypeInt16())
v0.AddArg(x)
- v0.Type = config.fe.TypeInt16()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpSignExt8to16, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpSignExt8to16, config.fe.TypeInt16())
v1.AddArg(y)
- v1.Type = config.fe.TypeInt16()
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpZeroExt8to16, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpZeroExt8to16, config.fe.TypeUInt16())
v0.AddArg(x)
- v0.Type = config.fe.TypeUInt16()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpZeroExt8to16, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpZeroExt8to16, config.fe.TypeUInt16())
v1.AddArg(y)
- v1.Type = config.fe.TypeUInt16()
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVBload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVBload, config.fe.TypeUInt8())
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt8()
v.AddArg(v0)
v.AddArg(mem)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVWload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVWload, config.fe.TypeUInt16())
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt16()
v.AddArg(v0)
v.AddArg(mem)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVLload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt32()
v.AddArg(v0)
v.AddArg(mem)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQload, config.fe.TypeUInt64())
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
v.AddArg(mem)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVOload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVOload, TypeInt128)
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = TypeInt128
v.AddArg(v0)
v.AddArg(mem)
return true
v.resetArgs()
v.AuxInt = 2
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVBload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVBload, config.fe.TypeUInt8())
v0.AuxInt = 2
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt8()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVWstore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVWstore, TypeMem)
v1.AddArg(dst)
- v2 := b.NewValue0(v.Line, OpAMD64MOVWload, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVWload, config.fe.TypeUInt16())
v2.AddArg(src)
v2.AddArg(mem)
- v2.Type = config.fe.TypeUInt16()
v1.AddArg(v2)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.resetArgs()
v.AuxInt = 4
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVBload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVBload, config.fe.TypeUInt8())
v0.AuxInt = 4
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt8()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVLstore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVLstore, TypeMem)
v1.AddArg(dst)
- v2 := b.NewValue0(v.Line, OpAMD64MOVLload, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
v2.AddArg(src)
v2.AddArg(mem)
- v2.Type = config.fe.TypeUInt32()
v1.AddArg(v2)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.resetArgs()
v.AuxInt = 4
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVWload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVWload, config.fe.TypeUInt16())
v0.AuxInt = 4
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt16()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVLstore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVLstore, TypeMem)
v1.AddArg(dst)
- v2 := b.NewValue0(v.Line, OpAMD64MOVLload, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
v2.AddArg(src)
v2.AddArg(mem)
- v2.Type = config.fe.TypeUInt32()
v1.AddArg(v2)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.resetArgs()
v.AuxInt = 3
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVLload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
v0.AuxInt = 3
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt32()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVLstore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVLstore, TypeMem)
v1.AddArg(dst)
- v2 := b.NewValue0(v.Line, OpAMD64MOVLload, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVLload, config.fe.TypeUInt32())
v2.AddArg(src)
v2.AddArg(mem)
- v2.Type = config.fe.TypeUInt32()
v1.AddArg(v2)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.resetArgs()
v.AuxInt = size - 8
v.AddArg(dst)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQload, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQload, config.fe.TypeUInt64())
v0.AuxInt = size - 8
v0.AddArg(src)
v0.AddArg(mem)
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVQstore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVQstore, TypeMem)
v1.AddArg(dst)
- v2 := b.NewValue0(v.Line, OpAMD64MOVQload, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVQload, config.fe.TypeUInt64())
v2.AddArg(src)
v2.AddArg(mem)
- v2.Type = config.fe.TypeUInt64()
v1.AddArg(v2)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = size - size%16
- v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
- v0.Type = dst.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, dst.Type)
v0.AddArg(dst)
v0.AuxInt = size % 16
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
- v1.Type = src.Type
+ v1 := b.NewValue0(v.Line, OpAMD64ADDQconst, src.Type)
v1.AddArg(src)
v1.AuxInt = size % 16
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpAMD64MOVQstore, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVQstore, TypeMem)
v2.AddArg(dst)
- v3 := b.NewValue0(v.Line, OpAMD64MOVQload, TypeInvalid)
+ v3 := b.NewValue0(v.Line, OpAMD64MOVQload, config.fe.TypeUInt64())
v3.AddArg(src)
v3.AddArg(mem)
- v3.Type = config.fe.TypeUInt64()
v2.AddArg(v3)
v2.AddArg(mem)
- v2.Type = TypeMem
v.AddArg(v2)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = size - size%16
- v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
- v0.Type = dst.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, dst.Type)
v0.AddArg(dst)
v0.AuxInt = size % 16
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
- v1.Type = src.Type
+ v1 := b.NewValue0(v.Line, OpAMD64ADDQconst, src.Type)
v1.AddArg(src)
v1.AuxInt = size % 16
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpAMD64MOVOstore, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVOstore, TypeMem)
v2.AddArg(dst)
- v3 := b.NewValue0(v.Line, OpAMD64MOVOload, TypeInvalid)
+ v3 := b.NewValue0(v.Line, OpAMD64MOVOload, TypeInt128)
v3.AddArg(src)
v3.AddArg(mem)
- v3.Type = TypeInt128
v2.AddArg(v3)
v2.AddArg(mem)
- v2.Type = TypeMem
v.AddArg(v2)
return true
}
v.resetArgs()
v.AddArg(dst)
v.AddArg(src)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQconst, config.fe.TypeUInt64())
v0.AuxInt = size / 8
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
v.AddArg(mem)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64MOVSSconst, TypeInvalid)
- v0.Type = config.Frontend().TypeFloat32()
+ v0 := b.NewValue0(v.Line, OpAMD64MOVSSconst, config.Frontend().TypeFloat32())
v0.AuxInt = f2i(math.Copysign(0, -1))
v.AddArg(v0)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64MOVSDconst, TypeInvalid)
- v0.Type = config.Frontend().TypeFloat64()
+ v0 := b.NewValue0(v.Line, OpAMD64MOVSDconst, config.Frontend().TypeFloat64())
v0.AuxInt = f2i(math.Copysign(0, -1))
v.AddArg(v0)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPW, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPL, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISS, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64UCOMISD, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPB, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64CMPQ, TypeFlags)
v0.AddArg(x)
v0.AddArg(y)
- v0.Type = TypeFlags
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRW, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRW, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 16
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARW
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORW, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 16
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARW
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORL, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 16
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARW
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORQ, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTQ, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTQ, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 16
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARW
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORB, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 16
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRL, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRL, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 32
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARL
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORW, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 32
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARL
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORL, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 32
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARL
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORQ, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTQ, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTQ, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 32
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARL
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORB, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 32
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRQ, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRQ, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 64
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARQ
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORW, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 64
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARQ
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORL, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 64
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARQ
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORQ, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTQ, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTQ, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 64
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARQ
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORB, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 64
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SHRB, TypeInvalid)
- v0.Type = t
+ v0 := b.NewValue0(v.Line, OpAMD64SHRB, t)
v0.AddArg(x)
v0.AddArg(y)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v1.Type = t
- v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, t)
+ v2 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v2.AddArg(y)
v2.AuxInt = 8
- v2.Type = TypeFlags
v1.AddArg(v2)
v.AddArg(v1)
return true
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARB
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORW, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORW, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPWconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 8
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARB
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORL, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORL, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPLconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 8
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARB
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORQ, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORQ, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTQ, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTQ, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBQcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPQconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 8
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
t := v.Type
x := v.Args[0]
y := v.Args[1]
+ v.Type = t
v.Op = OpAMD64SARB
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v.Type = t
v.AddArg(x)
- v0 := b.NewValue0(v.Line, OpAMD64ORB, TypeInvalid)
- v0.Type = y.Type
+ v0 := b.NewValue0(v.Line, OpAMD64ORB, y.Type)
v0.AddArg(y)
- v1 := b.NewValue0(v.Line, OpAMD64NOTL, TypeInvalid)
- v1.Type = y.Type
- v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, TypeInvalid)
- v2.Type = y.Type
- v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64NOTL, y.Type)
+ v2 := b.NewValue0(v.Line, OpAMD64SBBLcarrymask, y.Type)
+ v3 := b.NewValue0(v.Line, OpAMD64CMPBconst, TypeFlags)
v3.AddArg(y)
v3.AuxInt = 8
- v3.Type = TypeFlags
v2.AddArg(v3)
v1.AddArg(v2)
v0.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SUBBconst, TypeInvalid)
- v0.Type = v.Type
+ v0 := b.NewValue0(v.Line, OpAMD64SUBBconst, v.Type)
v0.AddArg(x)
v0.AuxInt = c
v.AddArg(v0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SUBLconst, TypeInvalid)
- v0.Type = v.Type
+ v0 := b.NewValue0(v.Line, OpAMD64SUBLconst, v.Type)
v0.AddArg(x)
v0.AuxInt = c
v.AddArg(v0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SUBQconst, TypeInvalid)
- v0.Type = v.Type
+ v0 := b.NewValue0(v.Line, OpAMD64SUBQconst, v.Type)
v0.AddArg(x)
v0.AuxInt = c
v.AddArg(v0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAMD64SUBWconst, TypeInvalid)
- v0.Type = v.Type
+ v0 := b.NewValue0(v.Line, OpAMD64SUBWconst, v.Type)
v0.AddArg(x)
v0.AuxInt = c
v.AddArg(v0)
v.resetArgs()
v.AuxInt = makeValAndOff(0, 2)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVWstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVWstoreconst, TypeMem)
v0.AuxInt = 0
v0.AddArg(destptr)
v0.AddArg(mem)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.resetArgs()
v.AuxInt = makeValAndOff(0, 4)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeMem)
v0.AuxInt = 0
v0.AddArg(destptr)
v0.AddArg(mem)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.resetArgs()
v.AuxInt = makeValAndOff(0, 4)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeMem)
v0.AuxInt = 0
v0.AddArg(destptr)
v0.AddArg(mem)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.resetArgs()
v.AuxInt = makeValAndOff(0, 3)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVLstoreconst, TypeMem)
v0.AuxInt = 0
v0.AddArg(destptr)
v0.AddArg(mem)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = size - size%8
- v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, config.fe.TypeUInt64())
v0.AddArg(destptr)
v0.AuxInt = size % 8
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v1.AuxInt = 0
v1.AddArg(destptr)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.resetArgs()
v.AuxInt = makeValAndOff(0, 8)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v0.AuxInt = 0
v0.AddArg(destptr)
v0.AddArg(mem)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.resetArgs()
v.AuxInt = makeValAndOff(0, 16)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v0.AuxInt = makeValAndOff(0, 8)
v0.AddArg(destptr)
- v1 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v1.AuxInt = 0
v1.AddArg(destptr)
v1.AddArg(mem)
- v1.Type = TypeMem
v0.AddArg(v1)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.resetArgs()
v.AuxInt = makeValAndOff(0, 24)
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v0.AuxInt = makeValAndOff(0, 16)
v0.AddArg(destptr)
- v1 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v1.AuxInt = makeValAndOff(0, 8)
v1.AddArg(destptr)
- v2 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVQstoreconst, TypeMem)
v2.AuxInt = 0
v2.AddArg(destptr)
v2.AddArg(mem)
- v2.Type = TypeMem
v1.AddArg(v2)
- v1.Type = TypeMem
v0.AddArg(v1)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = size - 8
- v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, config.fe.TypeUInt64())
v0.AuxInt = 8
v0.AddArg(destptr)
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVQstore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVQstore, TypeMem)
v1.AddArg(destptr)
- v2 := b.NewValue0(v.Line, OpAMD64MOVQconst, TypeInvalid)
+ v2 := b.NewValue0(v.Line, OpAMD64MOVQconst, config.fe.TypeUInt64())
v2.AuxInt = 0
- v2.Type = config.fe.TypeUInt64()
v1.AddArg(v2)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = duffStart(size)
- v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64ADDQconst, config.fe.TypeUInt64())
v0.AuxInt = duffAdj(size)
v0.AddArg(destptr)
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVOconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVOconst, TypeInt128)
v1.AuxInt = 0
- v1.Type = TypeInt128
v.AddArg(v1)
v.AddArg(mem)
return true
v.Aux = nil
v.resetArgs()
v.AddArg(destptr)
- v0 := b.NewValue0(v.Line, OpAMD64MOVQconst, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64MOVQconst, config.fe.TypeUInt64())
v0.AuxInt = size / 8
- v0.Type = config.fe.TypeUInt64()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpAMD64MOVQconst, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpAMD64MOVQconst, config.fe.TypeUInt64())
v1.AuxInt = 0
- v1.Type = config.fe.TypeUInt64()
v.AddArg(v1)
v.AddArg(mem)
return true
yes := b.Succs[0]
no := b.Succs[1]
b.Kind = BlockAMD64NE
- v0 := b.NewValue0(v.Line, OpAMD64TESTB, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpAMD64TESTB, TypeFlags)
v0.AddArg(cond)
v0.AddArg(cond)
- v0.Type = TypeFlags
b.Control = v0
b.Succs[0] = yes
b.Succs[1] = no
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v0.Aux = n
v0.AuxInt = off
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpArg, config.fe.TypeInt())
v1.Aux = n
v1.AuxInt = off + config.PtrSize
v.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v0.Aux = n
v0.AuxInt = off
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpArg, config.fe.TypeInt())
v1.Aux = n
v1.AuxInt = off + config.PtrSize
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v2.Type = config.fe.TypeInt()
+ v2 := b.NewValue0(v.Line, OpArg, config.fe.TypeInt())
v2.Aux = n
v2.AuxInt = off + 2*config.PtrSize
v.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v0.Aux = n
v0.AuxInt = off
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = config.fe.TypeBytePtr()
+ v1 := b.NewValue0(v.Line, OpArg, config.fe.TypeBytePtr())
v1.Aux = n
v1.AuxInt = off + config.PtrSize
v.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = config.fe.TypeFloat64()
+ v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat64())
v0.Aux = n
v0.AuxInt = off
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = config.fe.TypeFloat64()
+ v1 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat64())
v1.Aux = n
v1.AuxInt = off + 8
v.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = config.fe.TypeFloat32()
+ v0 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat32())
v0.Aux = n
v0.AuxInt = off
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = config.fe.TypeFloat32()
+ v1 := b.NewValue0(v.Line, OpArg, config.fe.TypeFloat32())
v1.Aux = n
v1.AuxInt = off + 4
v.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n
v0.AuxInt = off + t.FieldOff(0)
v.AddArg(v0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n
v0.AuxInt = off + t.FieldOff(0)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = t.FieldType(1)
+ v1 := b.NewValue0(v.Line, OpArg, t.FieldType(1))
v1.Aux = n
v1.AuxInt = off + t.FieldOff(1)
v.AddArg(v1)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n
v0.AuxInt = off + t.FieldOff(0)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = t.FieldType(1)
+ v1 := b.NewValue0(v.Line, OpArg, t.FieldType(1))
v1.Aux = n
v1.AuxInt = off + t.FieldOff(1)
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v2.Type = t.FieldType(2)
+ v2 := b.NewValue0(v.Line, OpArg, t.FieldType(2))
v2.Aux = n
v2.AuxInt = off + t.FieldOff(2)
v.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpArg, t.FieldType(0))
v0.Aux = n
v0.AuxInt = off + t.FieldOff(0)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v1.Type = t.FieldType(1)
+ v1 := b.NewValue0(v.Line, OpArg, t.FieldType(1))
v1.Aux = n
v1.AuxInt = off + t.FieldOff(1)
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v2.Type = t.FieldType(2)
+ v2 := b.NewValue0(v.Line, OpArg, t.FieldType(2))
v2.Aux = n
v2.AuxInt = off + t.FieldOff(2)
v.AddArg(v2)
- v3 := b.NewValue0(v.Line, OpArg, TypeInvalid)
- v3.Type = t.FieldType(3)
+ v3 := b.NewValue0(v.Line, OpArg, t.FieldType(3))
v3.Aux = n
v3.AuxInt = off + t.FieldOff(3)
v.AddArg(v3)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpPtrIndex, TypeInvalid)
- v0.Type = v.Type.PtrTo()
+ v0 := b.NewValue0(v.Line, OpPtrIndex, v.Type.PtrTo())
v0.AddArg(ptr)
v0.AddArg(idx)
v.AddArg(v0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpConstNil, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpConstNil, TypeInvalid)
- v1.Type = config.fe.TypeBytePtr()
+ v1 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpConstNil, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpConst32, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
v1.AuxInt = 0
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpConst32, TypeInvalid)
- v2.Type = config.fe.TypeInt()
+ v2 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
v2.AuxInt = 0
v.AddArg(v2)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpConstNil, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpConst64, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
v1.AuxInt = 0
v.AddArg(v1)
- v2 := b.NewValue0(v.Line, OpConst64, TypeInvalid)
- v2.Type = config.fe.TypeInt()
+ v2 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
v2.AuxInt = 0
v.AddArg(v2)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpConstNil, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpConst32, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
v1.AuxInt = 0
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpConstNil, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpConstNil, config.fe.TypeBytePtr())
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpConst64, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
v1.AuxInt = 0
v.AddArg(v1)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAddr, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr())
v0.Aux = config.fe.StringData(s.(string))
- v1 := b.NewValue0(v.Line, OpSB, TypeInvalid)
- v1.Type = config.fe.TypeUintptr()
+ v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr())
v0.AddArg(v1)
v.AddArg(v0)
- v2 := b.NewValue0(v.Line, OpConst32, TypeInvalid)
- v2.Type = config.fe.TypeInt()
+ v2 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
v2.AuxInt = int64(len(s.(string)))
v.AddArg(v2)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpAddr, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpAddr, config.fe.TypeBytePtr())
v0.Aux = config.fe.StringData(s.(string))
- v1 := b.NewValue0(v.Line, OpSB, TypeInvalid)
- v1.Type = config.fe.TypeUintptr()
+ v1 := b.NewValue0(v.Line, OpSB, config.fe.TypeUintptr())
v0.AddArg(v1)
v.AddArg(v0)
- v2 := b.NewValue0(v.Line, OpConst64, TypeInvalid)
- v2.Type = config.fe.TypeInt()
+ v2 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
v2.AuxInt = int64(len(s.(string)))
v.AddArg(v2)
return true
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpITab, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
v0.AddArg(x)
- v0.Type = config.fe.TypeBytePtr()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpITab, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
v1.AddArg(y)
- v1.Type = config.fe.TypeBytePtr()
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpIsNonNil, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool())
v0.AddArg(p)
- v0.Type = config.fe.TypeBool()
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpIsNonNil, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpIsNonNil, config.fe.TypeBool())
v0.AddArg(p)
- v0.Type = config.fe.TypeBool()
v.AddArg(v0)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpSlicePtr, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
v0.AddArg(x)
- v0.Type = config.fe.TypeBytePtr()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpSlicePtr, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
v1.AddArg(y)
- v1.Type = config.fe.TypeBytePtr()
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = t.FieldType(1)
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = t.FieldType(1).PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, t.FieldType(1))
+ v2 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v2.AuxInt = t.FieldOff(1)
v2.AddArg(ptr)
v1.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = t.FieldType(1)
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = t.FieldType(1).PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, t.FieldType(1))
+ v2 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v2.AuxInt = t.FieldOff(1)
v2.AddArg(ptr)
v1.AddArg(v2)
v1.AddArg(mem)
v.AddArg(v1)
- v3 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v3.Type = t.FieldType(2)
- v4 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v4.Type = t.FieldType(2).PtrTo()
+ v3 := b.NewValue0(v.Line, OpLoad, t.FieldType(2))
+ v4 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo())
v4.AuxInt = t.FieldOff(2)
v4.AddArg(ptr)
v3.AddArg(v4)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = t.FieldType(0)
+ v0 := b.NewValue0(v.Line, OpLoad, t.FieldType(0))
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = t.FieldType(1)
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = t.FieldType(1).PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, t.FieldType(1))
+ v2 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v2.AuxInt = t.FieldOff(1)
v2.AddArg(ptr)
v1.AddArg(v2)
v1.AddArg(mem)
v.AddArg(v1)
- v3 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v3.Type = t.FieldType(2)
- v4 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v4.Type = t.FieldType(2).PtrTo()
+ v3 := b.NewValue0(v.Line, OpLoad, t.FieldType(2))
+ v4 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo())
v4.AuxInt = t.FieldOff(2)
v4.AddArg(ptr)
v3.AddArg(v4)
v3.AddArg(mem)
v.AddArg(v3)
- v5 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v5.Type = t.FieldType(3)
- v6 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v6.Type = t.FieldType(3).PtrTo()
+ v5 := b.NewValue0(v.Line, OpLoad, t.FieldType(3))
+ v6 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(3).PtrTo())
v6.AuxInt = t.FieldOff(3)
v6.AddArg(ptr)
v5.AddArg(v6)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = config.fe.TypeFloat32()
+ v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat32())
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = config.fe.TypeFloat32()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = config.fe.TypeFloat32().PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat32())
+ v2 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat32().PtrTo())
v2.AuxInt = 4
v2.AddArg(ptr)
v1.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = config.fe.TypeFloat64()
+ v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat64())
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = config.fe.TypeFloat64()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = config.fe.TypeFloat64().PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, config.fe.TypeFloat64())
+ v2 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat64().PtrTo())
v2.AuxInt = 8
v2.AddArg(ptr)
v1.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = config.fe.TypeInt()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = config.fe.TypeInt().PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, config.fe.TypeInt())
+ v2 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v2.AuxInt = config.PtrSize
v2.AddArg(ptr)
v1.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = config.fe.TypeInt()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = config.fe.TypeInt().PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, config.fe.TypeInt())
+ v2 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v2.AuxInt = config.PtrSize
v2.AddArg(ptr)
v1.AddArg(v2)
v1.AddArg(mem)
v.AddArg(v1)
- v3 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v3.Type = config.fe.TypeInt()
- v4 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v4.Type = config.fe.TypeInt().PtrTo()
+ v3 := b.NewValue0(v.Line, OpLoad, config.fe.TypeInt())
+ v4 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v4.AuxInt = 2 * config.PtrSize
v4.AddArg(ptr)
v3.AddArg(v4)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr()
+ v0 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
v0.AddArg(ptr)
v0.AddArg(mem)
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpLoad, TypeInvalid)
- v1.Type = config.fe.TypeBytePtr()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = config.fe.TypeBytePtr().PtrTo()
+ v1 := b.NewValue0(v.Line, OpLoad, config.fe.TypeBytePtr())
+ v2 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeBytePtr().PtrTo())
v2.AuxInt = config.PtrSize
v2.AddArg(ptr)
v1.AddArg(v2)
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpITab, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
v0.AddArg(x)
- v0.Type = config.fe.TypeBytePtr()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpITab, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpITab, config.fe.TypeBytePtr())
v1.AddArg(y)
- v1.Type = config.fe.TypeBytePtr()
v.AddArg(v1)
return true
}
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
- v0 := b.NewValue0(v.Line, OpSlicePtr, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
v0.AddArg(x)
- v0.Type = config.fe.TypeBytePtr()
v.AddArg(v0)
- v1 := b.NewValue0(v.Line, OpSlicePtr, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpSlicePtr, config.fe.TypeBytePtr())
v1.AddArg(y)
- v1.Type = config.fe.TypeBytePtr()
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AddArg(ptr)
- v0 := b.NewValue0(v.Line, OpMul32, TypeInvalid)
- v0.Type = config.fe.TypeInt()
+ v0 := b.NewValue0(v.Line, OpMul32, config.fe.TypeInt())
v0.AddArg(idx)
- v1 := b.NewValue0(v.Line, OpConst32, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpConst32, config.fe.TypeInt())
v1.AuxInt = t.Elem().Size()
v0.AddArg(v1)
v.AddArg(v0)
v.Aux = nil
v.resetArgs()
v.AddArg(ptr)
- v0 := b.NewValue0(v.Line, OpMul64, TypeInvalid)
- v0.Type = config.fe.TypeInt()
+ v0 := b.NewValue0(v.Line, OpMul64, config.fe.TypeInt())
v0.AddArg(idx)
- v1 := b.NewValue0(v.Line, OpConst64, TypeInvalid)
- v1.Type = config.fe.TypeInt()
+ v1 := b.NewValue0(v.Line, OpConst64, config.fe.TypeInt())
v1.AuxInt = t.Elem().Size()
v0.AddArg(v1)
v.AddArg(v0)
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(1).Size()
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = t.FieldType(1).PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v0.AuxInt = t.FieldOff(1)
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(f1)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = t.FieldType(0).Size()
v1.AddArg(dst)
v1.AddArg(f0)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(2).Size()
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = t.FieldType(2).PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo())
v0.AuxInt = t.FieldOff(2)
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(f2)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = t.FieldType(1).Size()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = t.FieldType(1).PtrTo()
+ v2 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v2.AuxInt = t.FieldOff(1)
v2.AddArg(dst)
v1.AddArg(v2)
v1.AddArg(f1)
- v3 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v3 := b.NewValue0(v.Line, OpStore, TypeMem)
v3.AuxInt = t.FieldType(0).Size()
v3.AddArg(dst)
v3.AddArg(f0)
v3.AddArg(mem)
- v3.Type = TypeMem
v1.AddArg(v3)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = t.FieldType(3).Size()
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = t.FieldType(3).PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(3).PtrTo())
v0.AuxInt = t.FieldOff(3)
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(f3)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = t.FieldType(2).Size()
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = t.FieldType(2).PtrTo()
+ v2 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(2).PtrTo())
v2.AuxInt = t.FieldOff(2)
v2.AddArg(dst)
v1.AddArg(v2)
v1.AddArg(f2)
- v3 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v3 := b.NewValue0(v.Line, OpStore, TypeMem)
v3.AuxInt = t.FieldType(1).Size()
- v4 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v4.Type = t.FieldType(1).PtrTo()
+ v4 := b.NewValue0(v.Line, OpOffPtr, t.FieldType(1).PtrTo())
v4.AuxInt = t.FieldOff(1)
v4.AddArg(dst)
v3.AddArg(v4)
v3.AddArg(f1)
- v5 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v5 := b.NewValue0(v.Line, OpStore, TypeMem)
v5.AuxInt = t.FieldType(0).Size()
v5.AddArg(dst)
v5.AddArg(f0)
v5.AddArg(mem)
- v5.Type = TypeMem
v3.AddArg(v5)
- v3.Type = TypeMem
v1.AddArg(v3)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = 4
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = config.fe.TypeFloat32().PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat32().PtrTo())
v0.AuxInt = 4
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(imag)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = 4
v1.AddArg(dst)
v1.AddArg(real)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = 8
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = config.fe.TypeFloat64().PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeFloat64().PtrTo())
v0.AuxInt = 8
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(imag)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = 8
v1.AddArg(dst)
v1.AddArg(real)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = config.PtrSize
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = config.fe.TypeInt().PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v0.AuxInt = config.PtrSize
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(len)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = config.PtrSize
v1.AddArg(dst)
v1.AddArg(ptr)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = config.PtrSize
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = config.fe.TypeInt().PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v0.AuxInt = 2 * config.PtrSize
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(cap)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = config.PtrSize
- v2 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v2.Type = config.fe.TypeInt().PtrTo()
+ v2 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeInt().PtrTo())
v2.AuxInt = config.PtrSize
v2.AddArg(dst)
v1.AddArg(v2)
v1.AddArg(len)
- v3 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v3 := b.NewValue0(v.Line, OpStore, TypeMem)
v3.AuxInt = config.PtrSize
v3.AddArg(dst)
v3.AddArg(ptr)
v3.AddArg(mem)
- v3.Type = TypeMem
v1.AddArg(v3)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.Aux = nil
v.resetArgs()
v.AuxInt = config.PtrSize
- v0 := b.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v0.Type = config.fe.TypeBytePtr().PtrTo()
+ v0 := b.NewValue0(v.Line, OpOffPtr, config.fe.TypeBytePtr().PtrTo())
v0.AuxInt = config.PtrSize
v0.AddArg(dst)
v.AddArg(v0)
v.AddArg(data)
- v1 := b.NewValue0(v.Line, OpStore, TypeInvalid)
+ v1 := b.NewValue0(v.Line, OpStore, TypeMem)
v1.AuxInt = config.PtrSize
v1.AddArg(dst)
v1.AddArg(itab)
v1.AddArg(mem)
- v1.Type = TypeMem
v.AddArg(v1)
return true
}
v.AuxInt = size
v.AddArg(dst)
v.AddArg(src)
- v0 := b.NewValue0(v.Line, OpVarDef, TypeInvalid)
+ v0 := b.NewValue0(v.Line, OpVarDef, TypeMem)
v0.Aux = x
v0.AddArg(mem)
- v0.Type = TypeMem
v.AddArg(v0)
return true
}
if !(!config.fe.CanSSA(t)) {
goto end2afd47b4fcaaab7a73325bd8a75e3e8e
}
- v0 := v.Args[0].Block.NewValue0(v.Line, OpLoad, TypeInvalid)
+ v0 := v.Args[0].Block.NewValue0(v.Line, OpLoad, v.Type)
v.Op = OpCopy
v.AuxInt = 0
v.Aux = nil
v.resetArgs()
v.AddArg(v0)
- v0.Type = v.Type
- v1 := v.Args[0].Block.NewValue0(v.Line, OpOffPtr, TypeInvalid)
- v1.Type = v.Type.PtrTo()
+ v1 := v.Args[0].Block.NewValue0(v.Line, OpOffPtr, v.Type.PtrTo())
v1.AuxInt = t.FieldOff(i)
v1.AddArg(ptr)
v0.AddArg(v1)