Gfm.gfm.x: def of bend-osdev-gf@0.1.1.0 Import: import bend-osdev-gf@0.1.1.0/gfm.bend as Gfm Lines 51-54 of bend-osdev-gf@0.1.1.0/gfm.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-gf@0.1.1.0/gfm.bend&start_line=51&end_line=54 import Base # a * x for a below 2^m: shift, and reduce if x^m appeared def gfm.x(+m: Nat, +poly: U32, a: U32) -> U32: +s = U32.shl(a) U32.xor(s, U32.and(poly, gfm.mask(U32.shrn(s, m)))) Uses (7): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.and https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.shl https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.shrn https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.xor https://jend.leeeet.dev/definition.txt?path=bend-osdev-gf@0.1.1.0/gfm.bend&name=gfm.mask