Emission of store_multiple and load_multiple patterns
Ian Lance Taylor
iant@google.com
Sat Dec 12 02:21:00 GMT 2009
noeljohn <noel.daniel@gmx.com> writes:
> I am working on a new risc machine. I have defined the
> "store_multiple" and "load_multiple" pattern and the system builds fine. But
> when I compile the C program for a declared integer array, the
> "store_multiple" and "load_multiple" patterns are not getting emitted.
> Instead simple load and store patterns are emitted multiple times. As per
> actual working store_multiple and load_multiple patters need to get emitted.
What do your store_multiple and load_multiple insns look like?
E.g., if they only work for consecutive registers, then gcc can only
match them after register allocation, but there is no appropriate
optimization pass to do so. In that case you are going to have write
peepholes for them, and you're going to have to generate them
explicitly in your backend's prologue and epilogue generation.
Ian
More information about the Gcc-help
mailing list