Go to the source code of this file.
|
#define | FR_SUB(Z, X, Y) |
| Macro for Z=X-Y. Consider that X is in registers X0..X3 and Y in Y0..Y3. Z and X can overlap. More...
|
|
◆ FR_SUB
#define FR_SUB |
( |
|
Z, |
|
|
|
X, |
|
|
|
Y |
|
) |
| |
Value: \
\
"\n\tsub.u64.cc "#
Z"0, "#
X"0, "#
Y"0;" \
"\n\tsubc.u64.cc "#
Z"1, "#
X"1, "#
Y"1;" \
"\n\tsubc.u64.cc "#
Z"2, "#
X"2, "#
Y"2;" \
"\n\tsubc.u64.cc "#
Z"3, "#
X"3, "#
Y"3;" \
"\n\tsubc.u32 t4, 0, 0;" \
\
\
\
"\n\tsetp.ne.u32 nz, t4, 0;" \
"\n@nz\tadd.u64.cc "#
Z"0, "#
Z"0, 0xFFFFFFFE00000002U;" \
"\n@nz\taddc.u64.cc "#
Z"1, "#
Z"1, 0xA77B4805FFFCB7FDU;" \
"\n@nz\taddc.u64.cc "#
Z"2, "#
Z"2, 0x6673B0101343B00AU;" \
"\n@nz\taddc.u64.cc "#
Z"3, "#
Z"3, 0xE7DB4EA6533AFA90U;" \
"\n@nz\taddc.u32 t4, t4, 0;" \
\
\
\
"\n\tsetp.ne.u32 nz, t4, 0;" \
"\n@nz\tadd.u64.cc "#
Z"0, "#
Z"0, 0xFFFFFFFE00000002U;" \
"\n@nz\taddc.u64.cc "#
Z"1, "#
Z"1, 0xA77B4805FFFCB7FDU;" \
"\n@nz\taddc.u64.cc "#
Z"2, "#
Z"2, 0x6673B0101343B00AU;" \
"\n@nz\taddc.u64.cc "#
Z"3, "#
Z"3, 0xE7DB4EA6533AFA90U;" \
__managed__ fr_t Y[512 *512]
__managed__ fr_t Z[512 *512]
__managed__ fr_t X[512 *512]
Macro for Z=X-Y. Consider that X is in registers X0..X3 and Y in Y0..Y3. Z and X can overlap.
Definition at line 10 of file fr_sub.cuh.