1 /* Description of target passes for ARC.
2 Copyright (C
) 2019-2023 Free Software Foundation
, Inc.
*/
4 /* This file is part of GCC.
6 GCC is free software
; you can redistribute it and
/or modify it under
7 the terms of the GNU General Public License as published by the Free
8 Software Foundation
; either version
3, or (at your option
) any later
11 GCC is distributed in the hope that it will be useful
, but WITHOUT ANY
12 WARRANTY
; without even the implied warranty of MERCHANTABILITY or
13 FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License
16 You should have received a copy of the GNU General Public License
17 along with GCC
; see the file COPYING3. If not see
18 <http
://www.gnu.org
/licenses
/>.
*/
20 /* First target dependent ARC if
-conversion pass.
*/
21 INSERT_PASS_AFTER (pass_delay_slots
, 1, pass_arc_ifcvt
);
23 /* Second target dependent ARC if
-conversion pass.
*/
24 INSERT_PASS_BEFORE (pass_shorten_branches
, 1, pass_arc_ifcvt
);
26 /* Find annulled delay insns and convert them to use the appropriate
27 predicate. This allows branch shortening to size up these
28 instructions properly.
*/
29 INSERT_PASS_AFTER (pass_delay_slots
, 1, pass_arc_predicate_delay_insns
);