AN2203 Freescale Semiconductor / Motorola, AN2203 Datasheet - Page 48

no-image

AN2203

Manufacturer Part Number
AN2203
Description
MPC7450 RISC Microprocessor Family Software Optimization Guide
Manufacturer
Freescale Semiconductor / Motorola
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
AN22030A
Manufacturer:
PANASONIC/松下
Quantity:
20 000
Other Optimizations Worth Investigating
Assembly code:
alias_case:
Note that in both the non-alias and alias case, the new code has higher performance. In the non-alias case,
only one load and store per pointer is needed; in the alias case, because the compiler knows that the two
pointers point to the same location, only a single load and store is needed. Also note that in the alias case,
additional optimizations may now be possible. Here, the AND operation on b and the add to a can now be
merged into a single rlwinm instruction since a and b are now known to be the same memory location.
4.4
As the complexity of architecture design increases, each new processor relies more on the compiler
toolchain to perform complex analysis and code transformations to fully use the architecture features. The
following sections describe some optimizations that are significant for the MPC7450 and are likely to be
more important on future microprocessors:
4.4.1
On the MPC7450, care should be taken to allow the microprocessor to pipeline data cache misses. For some
applications, pipelining cache misses to lower levels of the memory hierarchy is key to achieving high
performance. Because the MPC7450 stalls on multiple load misses to the same cache block, it is often
necessary to clump miss accesses together when trying to achieve high bandwidth.
48
}
cmpw 0,3,4
beq alias_case
lwz 9,0(3)
lbz 0,3(4)
addi 9,9,5
add 9,9,0
...
stw 9,0(3)
stw 0,0(4)
blr
lwz 9,0(3)
addi 9,9,5
rlwinm 9,9,0,23,30
...
stw 9,0(3)
blr
Other Optimizations Worth Investigating
Software-Controlled Data Prefetching
MPC7450 RISC Microprocessor Family Software Optimization Guide
} else {
}
Freescale Semiconductor, Inc.
For More Information On This Product,
aval += bval;
...
*a = aval;
*b = bval;
*a += 5;
*b &= 0xff;
*a += *b;
...
Go to: www.freescale.com
MOTOROLA

Related parts for AN2203