On 19/02/14 10:18, Ian Bolton wrote: > Hi, > > Patterns had previously been added to thumb2.md to support ORN, but only for > SImode. > > This patch adds DImode support, to cover the full 64|64->64 operation and > the various 32|64->64 operations (see AND:DI variants that use NOT). > > The patch comes with its own execution test and looks for correct number of > ORN instructions in the assembly. > > Regressions passed. > > OK for stage 1? >
OK. Do you not also need a pattern for (ior:DI (not:DI (reg:DI)) (zero_extend:DI (reg:SI)) -> orn (lowpart)+ mvn(highpart) I don't think one works for sign-extension, though. R. > > 2014-02-19 Ian Bolton <ian.bol...@arm.com> > > gcc/ > * config/arm/thumb2.md (*iordi_notdi_di): New pattern. > (*iordi_notzesidi): New pattern. > (*iordi_notsesidi_di): New pattern. > testsuite/ > * gcc.target/arm/iordi_notdi-1.c: New test. >