arm.c (cortexa7_younger): Return true for TYPE_CALL.
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> * config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL. * config/arm/cortex-a7.md (cortex_a7_call): Update required units. From-SVN: r195554
This commit is contained in:
parent
8cbc2ea849
commit
753bcf7bdf
3 changed files with 11 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
|
||||
|
||||
* config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL.
|
||||
* config/arm/cortex-a7.md (cortex_a7_call): Update required units.
|
||||
|
||||
2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com>
|
||||
|
||||
* config/arm/arm-protos.h (arm_mac_accumulator_is_result): New
|
||||
|
|
|
@ -8758,6 +8758,7 @@ cortexa7_younger (FILE *file, int verbose, rtx insn)
|
|||
case TYPE_SIMPLE_ALU_IMM:
|
||||
case TYPE_SIMPLE_ALU_SHIFT:
|
||||
case TYPE_BRANCH:
|
||||
case TYPE_CALL:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
|
|
@ -80,12 +80,15 @@
|
|||
(eq_attr "neon_type" "none")))
|
||||
"(cortex_a7_ex2|cortex_a7_ex1)+cortex_a7_branch")
|
||||
|
||||
;; A call reserves all issue slots. The result is available the next cycle.
|
||||
;; Call cannot dual-issue as an older instruction. It can dual-issue
|
||||
;; as a younger instruction, or single-issue. Call cannot dual-issue
|
||||
;; with another branch instruction. The result is available the next
|
||||
;; cycle.
|
||||
(define_insn_reservation "cortex_a7_call" 1
|
||||
(and (eq_attr "tune" "cortexa7")
|
||||
(and (eq_attr "type" "call")
|
||||
(eq_attr "neon_type" "none")))
|
||||
"cortex_a7_all")
|
||||
"(cortex_a7_ex2|cortex_a7_both)+cortex_a7_branch")
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ALU instructions.
|
||||
|
|
Loading…
Add table
Reference in a new issue