Imports #
"fmt"
. "github.com/mmcloughlin/avo/build"
. "github.com/mmcloughlin/avo/gotypes"
. "github.com/mmcloughlin/avo/operand"
. "github.com/mmcloughlin/avo/reg"
"fmt"
. "github.com/mmcloughlin/avo/build"
. "github.com/mmcloughlin/avo/gotypes"
. "github.com/mmcloughlin/avo/operand"
. "github.com/mmcloughlin/avo/reg"
type namedComponent struct {
Component
name string
}
type uint128 struct {
name string
hi GPVirtual
lo GPVirtual
}
func (c namedComponent) String() string
func (c uint128) String() string
addMul64 sets r to r + i * aX * bX.
func addMul64(r uint128, i uint64, aX namedComponent, bX namedComponent)
func feMul()
func feSquare()
func main()
maskAndAdd sets r = r&mask + c*i.
func maskAndAdd(r GPVirtual, mask GPVirtual, c GPVirtual, i uint64)
mul64 sets r to i * aX * bX.
func mul64(r uint128, i int, aX namedComponent, bX namedComponent)
func mustAddr(c Component) Op
shiftRightBy51 returns r >> 51 and r.lo. After this function is called, the uint128 may not be used anymore.
func shiftRightBy51(r *uint128) (out GPVirtual, lo GPVirtual)
Generated with Arrow