[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
AW: [avr-libc-dev] Additional instruction patterns for or more efficient
From: |
Björn Haase |
Subject: |
AW: [avr-libc-dev] Additional instruction patterns for or more efficient code using mixed QI/HI/SI expressions |
Date: |
Tue, 7 Dec 2004 23:43:36 +0100 |
Hi,
I have been adding some specialized instruction patterns
for dealing with expresions that mix QI,HI and SI objects. (Tedious work.)
In addition to a bunch of specialized "combined" patterns, I would like to
suggest to
change the "copy_to_mode_reg" within the movsi and movhi "define_expand"s.
We could copy const_int values that could fit into 8 or 16 bit in QI or HI
registers instead and use the appropriate extension operations for promoting
the values to the HI/SI target modes on the fly.
In my opinion the main possible benefit of the suggested changes in the
machine description is that less registers are required.
Yours,
Björn
P.S.:
Could anyone give me an advice on how to write automized scripts for
checking compilation result on a simulator? I have tried to use
simulavr. I, however, did not succeed to build it under cygwin.
P.P.S.:
implementing at least plus:DI and minus:DI operations would be so easy. Any
reason, not to extend
the existing %Ax ... %Dx templates to the %Ax ... %Hx range and add the
corresponding plus:DI and
minus:DI patterns in the machine description?
[avr-libc-dev] AW: Register allocator / -fnew-ra issue, Björn Haase, 2004/12/07
RE: [avr-libc-dev] Improved optimizer for mixed 32 / 16 / 8 bitexpressions, Bernard Fouché, 2004/12/02