On 10/21/2016 04:30 AM, Jiong Wang wrote:
All DW_OP_* of the expression are grouped together inside the PARALLEL, and those operations which don't have RTL mapping are wrapped by UNSPEC. The parsing algorithm is simply something like:foreach elem inside PARALLEL if (UNSPEC) { dw_op_code = INTVAL (XVECEXP (elem, 0, 0)); oprnd1 = INTVAL (XVECEXP (elem, 0, 1)); oprnd2 = INTVAL (XVECEXP (elem, 0, 2)); } else call standard RTL parser. Any comments on the approach?
If you're going to use UNSPEC, why not put the DWARF operator in the second operand?
Jason
