https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102150
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Just a little history here. Before r0-27963-g22aa60a1e04832 (in GCC 3.0.0), no inline-asm was considered a trapping. That changed it such that volatile inline-asm and old style inline-asm was trapping. Now I am not sure ifcvt should be doing the movement as it does not know the cost anyways.