From b7767f0f3cb6879b42ed47e9375313829028adaf Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Mon, 10 Jan 2011 19:23:42 -0800 Subject: tcg: Define "deposit" as an optional operation. Signed-off-by: Richard Henderson Signed-off-by: Edgar E. Iglesias --- tcg/README | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'tcg/README') diff --git a/tcg/README b/tcg/README index a18a87ffcd..a50ecc6588 100644 --- a/tcg/README +++ b/tcg/README @@ -285,6 +285,20 @@ the four high order bytes are set to zero. Indicate that the value of t0 won't be used later. It is useful to force dead code elimination. +* deposit_i32/i64 dest, t1, t2, pos, loc + +Deposit T2 as a bitfield into T1, placing the result in DEST. +The bitfield is described by POS/LOC, which are immediate values: + + LEN - the length of the bitfield + POS - the position of the first bit, counting from the LSB + +For example, pos=8, len=4 indicates a 4-bit field at bit 8. +This operation would be equivalent to + + dest = (t1 & ~0x0f00) | ((t2 << 8) & 0x0f00) + + ********* Conditional moves * setcond_i32/i64 cond, dest, t1, t2 -- cgit v1.2.3