This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH ARM]Extend thumb1_reorg to save more comparison instructions
- From: Steven Bosscher <stevenb dot gcc at gmail dot com>
- To: Bin Cheng <bin dot cheng at arm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 18 Apr 2013 10:20:15 +0200
- Subject: Re: [PATCH ARM]Extend thumb1_reorg to save more comparison instructions
- References: <516f8681 dot a21d3c0a dot 31cc dot 54d5SMTPIN_ADDED_BROKEN at mx dot google dot com>
On Thu, Apr 18, 2013 at 7:34 AM, Bin Cheng wrote:
> Before thumb1_reorg, ARM backend uses peephole to save comparison
> instructions when a flag setting move is found before branch instruction.
> Since we are using thumb1_reog now, it can be extended to catch more
> opportunities by searching flag setting move instruction before branch,
> rather than only the exact one before branch.
> For example:
> mov r0, r1
> //other insns does not kill r0
> branch if (r0 == 0)
> //other insns
> Tested on thumb1, is it OK?
Isn't this something you could use compare-elim.c for instead of a
target specific pass?