Hi,

On 02/16/2012 11:06 AM, Kirill Yukhin wrote:
> +(define_insn "xbegin_1"
> +  [(set (match_operand:SI 0 "register_operand" "=a")
> +    (unspec_volatile:SI [(match_dup 0)] UNSPECV_XBEGIN))
> +   (set (match_operand:BLK 1 "" "")
> +    (unspec_volatile:BLK [(match_dup 1)] UNSPECV_XBEGIN))]
> +  "TARGET_RTM"
> +  "xbegin\t.+6"
> +  [(set_attr "type" "other")
> +   (set_attr "length" "3")])
> +

Here you cannot specify your fallback instruction address. Since those primitives provide high performance speculative code, I would prefer to move my fallback code far away from the speculative code path to improve the code locality.

Thanks for working on this.
--
Patrick

Reply via email to