| 1246 | } |
| 1247 | |
| 1248 | txBigInt *fxBigInt_lsl(txMachine* the, txBigInt *r, txBigInt *a, txBigInt *b) |
| 1249 | { |
| 1250 | if (b->sign) { |
| 1251 | if (a->sign) { |
| 1252 | r = fxBigInt_ulsr1(the, r, a, b->data[0]); |
| 1253 | if (b->data[0]) |
| 1254 | r = fxBigInt_uadd(the, C_NULL, r, (txBigInt *)&gxBigIntOne); |
| 1255 | r->sign = 1; |
| 1256 | } |
| 1257 | else |
| 1258 | r = fxBigInt_ulsr1(the, r, a, b->data[0]); |
| 1259 | } |
| 1260 | else { |
| 1261 | r = fxBigInt_ulsl1(the, r, a, b->data[0]); |
| 1262 | r->sign = a->sign; |
| 1263 | } |
| 1264 | return fxBigInt_fit(the, r); |
| 1265 | } |
| 1266 | |
| 1267 | txBigInt *fxBigInt_ulsl1(txMachine* the, txBigInt *r, txBigInt *a, txU4 sw) |
| 1268 | { |
nothing calls this directly
no test coverage detected