iden3/circom

Question about fr.asm

MJJ-Shuai opened this issue · 0 comments

Hi, I've been looking at the underlying code of the circom compiler. I have read the fr.asm file generated by circom compilation and I am not sure what these functions do. These functions may implement some of the key steps of Montgomery's algorithm, but I do not understand the difference between them:

    global Fr_rawMMul
    global Fr_rawMSquare
    global Fr_rawToMontgomery
    global Fr_rawFromMontgomery

I'd appreciate it if you could give me a brief introduction.