Revision d7156f7c tcg/README
b/tcg/README | ||
---|---|---|
361 | 361 |
All this opcodes assume that the pointed host memory doesn't correspond |
362 | 362 |
to a global. In the latter case the behaviour is unpredictable. |
363 | 363 |
|
364 |
********* Multiword arithmetic support |
|
365 |
|
|
366 |
* add2_i32/i64 t0_low, t0_high, t1_low, t1_high, t2_low, t2_high |
|
367 |
* sub2_i32/i64 t0_low, t0_high, t1_low, t1_high, t2_low, t2_high |
|
368 |
|
|
369 |
Similar to add/sub, except that the double-word inputs T1 and T2 are |
|
370 |
formed from two single-word arguments, and the double-word output T0 |
|
371 |
is returned in two single-word outputs. |
|
372 |
|
|
373 |
* mulu2_i32/i64 t0_low, t0_high, t1, t2 |
|
374 |
|
|
375 |
Similar to mul, except two unsigned inputs T1 and T2 yielding the full |
|
376 |
double-word product T0. The later is returned in two single-word outputs. |
|
377 |
|
|
364 | 378 |
********* 64-bit target on 32-bit host support |
365 | 379 |
|
366 | 380 |
The following opcodes are internal to TCG. Thus they are to be implemented by |
... | ... | |
372 | 386 |
Similar to brcond, except that the 64-bit values T0 and T1 |
373 | 387 |
are formed from two 32-bit arguments. |
374 | 388 |
|
375 |
* add2_i32 t0_low, t0_high, t1_low, t1_high, t2_low, t2_high |
|
376 |
* sub2_i32 t0_low, t0_high, t1_low, t1_high, t2_low, t2_high |
|
377 |
|
|
378 |
Similar to add/sub, except that the 64-bit inputs T1 and T2 are |
|
379 |
formed from two 32-bit arguments, and the 64-bit output T0 |
|
380 |
is returned in two 32-bit outputs. |
|
381 |
|
|
382 |
* mulu2_i32 t0_low, t0_high, t1, t2 |
|
383 |
|
|
384 |
Similar to mul, except two 32-bit (unsigned) inputs T1 and T2 yielding |
|
385 |
the full 64-bit product T0. The later is returned in two 32-bit outputs. |
|
386 |
|
|
387 | 389 |
* setcond2_i32 dest, t1_low, t1_high, t2_low, t2_high, cond |
388 | 390 |
|
389 | 391 |
Similar to setcond, except that the 64-bit values T1 and T2 are |
Also available in: Unified diff