Technical information
Operating Precautions for CPDW9X/NT-CDR-V85X, Y-GHS-MULTI-V800
TM
Customer Notification r20tu0003ed1812 67
No. a54
Peephole Optimizer does not generate proper code
Version Information
V4.0.5, V4.0.5c, V4.0.7
Details
The peephole optimizer is not recognizing various items regarding redundant code recognition
and internal temporary register references. Although the generated code is not wrong, the
optimisation is not successfully done.
Command Line
ccv850 –c –Ospace –list –passsource test.c
The compiler generated a sequence:
--1193: static void copy_block(s, buf, len, header)
.align 2
.globl ___copy_block_static_in_trees_inf
___copy_block_static_in_trees_inf:
prepare {r28,r29},0
mov r6,r2
…
dispose 0,{r28,r29},[lp]
Since the prepare/dispose header are unnecessary, if only temporary registers are used, they
can be replaced by
jmp [lp]
Workaround
Download a compiler update from the internet at
http://www.renesas.eu/updates?id=443
This patch will update all compiler versions to new 4.07A. The patch does not change the GUI
portions of the compiler, but underlying compilers and libraries.










