Re: [PATCH] rl78 anddi3 improvement

2018-01-19 Thread DJ Delorie
Jeff Law writes: > So I think you're ultimately far better off determining why GCC does not > generate efficient code for 64bit logicals on the rl78 target. In thinking about this more, one possible reason is that rl78 has an 8-bit WORD_MODE. Which means DImode operations are

Re: [PATCH] rl78 anddi3 improvement

2017-12-19 Thread DJ Delorie
Right, when doing 64-bit operations on an 8-bit mcu with limited registers, a hand-written assembler routine that you call as needed will beat anything gcc spits out - for size-per-call. And I had a lot of trouble getting gcc to deal with the rl78's limited register set and addressing modes -

RE: [PATCH] rl78 anddi3 improvement

2017-12-11 Thread Sebastian Perta
Hello Jeff, Thank you for your comments. >>So I think you're ultimately far better off determining why GCC does not >>generate efficient code for 64bit logicals on the rl78 target. I totally agree with you, this is why: 1. I have another patch: I define_expand movdi in which I instruct GCC to

Re: [PATCH] rl78 anddi3 improvement

2017-12-08 Thread Jeff Law
On 12/08/2017 07:50 AM, Sebastian Perta wrote: > Hello, > > The following patch improves code size for 64 bit and for RL78: > it emits a library function call instead of emitting code for the 64 bit > min for every single time. > The and function which was added in libgcc is hand written, so

[PATCH] rl78 anddi3 improvement

2017-12-08 Thread Sebastian Perta
Hello, The following patch improves code size for 64 bit and for RL78: it emits a library function call instead of emitting code for the 64 bit min for every single time. The and function which was added in libgcc is hand written, so more optimal than what GCC generates. The change can easily