diff options
Diffstat (limited to 'gcc/config/h8300/h8300.c')
| -rw-r--r-- | gcc/config/h8300/h8300.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c index b34ddd3..ad50955 100644 --- a/gcc/config/h8300/h8300.c +++ b/gcc/config/h8300/h8300.c @@ -2675,6 +2675,20 @@ compute_logical_op_cc (enum machine_mode mode, rtx *operands) return cc; } +/* Expand a conditional branch. */ + +void +h8300_expand_branch (enum rtx_code code, rtx label) +{ + rtx tmp; + + tmp = gen_rtx_fmt_ee (code, VOIDmode, cc0_rtx, const0_rtx); + tmp = gen_rtx_IF_THEN_ELSE (VOIDmode, tmp, + gen_rtx_LABEL_REF (VOIDmode, label), + pc_rtx); + emit_jump_insn (gen_rtx_SET (VOIDmode, pc_rtx, tmp)); +} + /* Shifts. We devote a fair bit of code to getting efficient shifts since we |
