[PING][PATCH][AArch64] Implement ALU_BRANCH fusion
Wilco Dijkstra
Wilco.Dijkstra@arm.com
Tue Apr 25 11:39:00 GMT 2017
Hi Naveen,
> https://gcc.gnu.org/ml/gcc-patches/2017-03/msg01369.html
Same comment for this part, we want to return true if we match:
+ if (SET_DEST (curr_set) != (pc_rtx)
+ || GET_CODE (SET_SRC (curr_set)) != IF_THEN_ELSE
+ || ! REG_P (XEXP (XEXP (SET_SRC (curr_set), 0), 0))
+ || ! REG_P (SET_DEST (prev_set))
+ || REGNO (SET_DEST (prev_set))
+ != REGNO (XEXP (XEXP (SET_SRC (curr_set), 0), 0)))
+ return false;
Note writing these complex conditions using positive logic makes them much
more readable - if you have to negate use !(X && Y && Z) rather than !X || !Y || !Z.
Wilco
More information about the Gcc-patches
mailing list