• Mike Hamburg's avatar
    Separate API word size from arch word size. This enables compiling · 8d6c51ee
    Mike Hamburg authored
    a 32-bit arch on a 64-bit platform, eg NEON on AARCH64.  It's probably
    more useful for cross-platform testing, though.
    
    The breakdown is as follows:
    * decaf_bool_t, decaf_word_t and decaf_error_t are as defined in the API.
    * DECAF_WORD_BITS is the size of a decaf_word_t.
    * decaf_word_t is used for scalars, so on every curve the scalar impls are the same
    (i.e. they follow the API's word size).
    * SC_LIMB macro always takes a 64-bit word.
    
    * non-prefixed word_t, mask_t, etc are as defined by the per-curve arch.
    * ARCH_WORD_BITS is the size of a word_t.
    * word_t is used for gf elements, so the curves may have different guts.
    8d6c51ee