diff options
| author | gretay <gretay@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-06-18 17:24:25 +0000 |
|---|---|---|
| committer | gretay <gretay@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-06-18 17:24:25 +0000 |
| commit | 426be8c56ddd712ef1b9959c56c5e01387412f68 (patch) | |
| tree | 54f6acbbd5d6ba5320cdcd59bc25cd4deceb85cc /libjava/classpath/java/sql/ResultSetMetaData.java | |
| parent | d0e38b85acb8cef98af8da649f50ce26e55c7ec2 (diff) | |
| download | ppe42-gcc-426be8c56ddd712ef1b9959c56c5e01387412f68.tar.gz ppe42-gcc-426be8c56ddd712ef1b9959c56c5e01387412f68.zip | |
This patch adds new define_insn patterns for epilogue with integer
registers.
The patterns can handle pop multiple with writeback and return (loading into
PC directly).
To handle return, the patterns use a new special predicate
pop_multiple_return, that uses ldm_stm_operation_p function from a previous
patch. To output assembly, the patterns use a new function
arm_output_multireg_pop.
This patch also adds a new function arm_emit_multi_reg_pop
that emits RTL that matches the new pop patterns for integer registers.
This is a helper function for epilogue expansion. It is used by a later
patch.
2012-06-18 Ian Bolton <ian.bolton@arm.com>
Sameera Deshpande <sameera.deshpande@arm.com>
Greta Yorsh <greta.yorsh@arm.com>
* config/arm/arm.md (load_multiple_with_writeback) New define_insn.
(load_multiple, pop_multiple_with_writeback_and_return) Likewise.
(pop_multiple_with_return, ldr_with_return) Likewise.
* config/arm/predicates.md (pop_multiple_return) New special predicate.
* config/arm/arm-protos.h (arm_output_multireg_pop) New declaration.
* config/arm/arm.c (arm_output_multireg_pop) New function.
(arm_emit_multi_reg_pop): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@188739 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/java/sql/ResultSetMetaData.java')
0 files changed, 0 insertions, 0 deletions

