This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch : H8300] Fix regressions for bit related instructions


Hi Jeff,

>> If there is a hunk that is directly responsible for fixing bugs, we 
>> can break that out into its own patch that could be installed now

Please find attached the "h8sx.patch" patch which fixes regressions 
for H8SX and related targets. 
The patch basically disallows use of register operands in bit patterns
for H8SX target. H8SX code results in ICE when trying to generate 
SUBREG(gen_rtx_SUBREG) for bit patterns. Hence, bit patterns of H8SX
was restricted to use only memory mode. As H8SX target is a higher 
version of H8300, it generates memory addressing RTL pattern for bit 
patterns. Hence this approach would optimize the code in H8SX as it 
reduces the overhead of loading registers before operating on bit 
patterns. 

We had already posted the initial patch at following link:-
http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00674.html
However, we could not follow up on the patch due to some other 
priorities. Please let us know whether it is the correct approach to 
solve the ICE generated with H8SX target or let us where to modify the
code to fix these errors.

>> If you could fix those issues and attach the patch to PR 41998 I'll 
>> install the updated patch once gcc-4.5 branches and the mainline 
>> opens again for development work. 

Thanks a lot for verifying the patch and useful comments. The comments
will be addressed and the patch will be posted PR 41998 as per your
suggestions.

>> If you could also verify that a copyright assignment is in place for:

KPIT has signed copyright assignment and some of our patches are already 
accepted and present in current GCC sources. Please let us know whether 
we should provide the signed copyright assignment approval mail.

2010-02-17  Naveen.H.S  <naveenh1@kpitcummins.com>
	* config/h8300/predicates.md (bit_reg_operand): New predicate.
	* config/h8300/h8300.md (insv): Modify the predicate in "loc" 
	field.
	* config/h8300/h8300.md (insv): Likewise.

Thanks & Regards,
Naveen.H.S
www.kpitgnutools.com

Attachment: h8sx.patch
Description: h8sx.patch


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]