Mercurial > hg > CbC > CbC_gcc
comparison gcc/config/mips/loongson2ef.md @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | f6334be47118 |
children | 84e7813d76e9 |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 ;; Pipeline model for ST Microelectronics Loongson-2E/2F cores. | 1 ;; Pipeline model for ST Microelectronics Loongson-2E/2F cores. |
2 | 2 |
3 ;; Copyright (C) 2008, 2010 Free Software Foundation, Inc. | 3 ;; Copyright (C) 2008-2017 Free Software Foundation, Inc. |
4 ;; Contributed by CodeSourcery. | 4 ;; Contributed by CodeSourcery. |
5 ;; | 5 ;; |
6 ;; GCC is free software; you can redistribute it and/or modify | 6 ;; GCC is free software; you can redistribute it and/or modify |
7 ;; it under the terms of the GNU General Public License as published by | 7 ;; it under the terms of the GNU General Public License as published by |
8 ;; the Free Software Foundation; either version 3, or (at your option) | 8 ;; the Free Software Foundation; either version 3, or (at your option) |
96 | 96 |
97 ;; The following 4 instructions each subscribe one of | 97 ;; The following 4 instructions each subscribe one of |
98 ;; ls2_[f]alu{1,2}_turn_enabled units according to this attribute. | 98 ;; ls2_[f]alu{1,2}_turn_enabled units according to this attribute. |
99 ;; These instructions are used in mips.c: sched_ls2_dfa_post_advance_cycle. | 99 ;; These instructions are used in mips.c: sched_ls2_dfa_post_advance_cycle. |
100 | 100 |
101 (define_attr "ls2_turn_type" "alu1,alu2,falu1,falu2,unknown" | 101 (define_attr "ls2_turn_type" "alu1,alu2,falu1,falu2,unknown,atomic,syncloop" |
102 (const_string "unknown")) | 102 (const_string "unknown")) |
103 | 103 |
104 ;; Subscribe ls2_alu1_turn_enabled. | 104 ;; Subscribe ls2_alu1_turn_enabled. |
105 (define_insn "ls2_alu1_turn_enabled_insn" | 105 (define_insn "ls2_alu1_turn_enabled_insn" |
106 [(unspec [(const_int 0)] UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)] | 106 [(unspec [(const_int 0)] UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)] |
152 (define_query_cpu_unit "ls2_mem" "ls2_mem") | 152 (define_query_cpu_unit "ls2_mem" "ls2_mem") |
153 | 153 |
154 ;; Reservation for integer instructions. | 154 ;; Reservation for integer instructions. |
155 (define_insn_reservation "ls2_alu" 2 | 155 (define_insn_reservation "ls2_alu" 2 |
156 (and (eq_attr "cpu" "loongson_2e,loongson_2f") | 156 (and (eq_attr "cpu" "loongson_2e,loongson_2f") |
157 (eq_attr "type" "arith,condmove,const,logical,mfhilo,move, | 157 (eq_attr "type" "arith,condmove,const,logical,mfhi,mflo,move, |
158 mthilo,nop,shift,signext,slt")) | 158 mthi,mtlo,nop,shift,signext,slt")) |
159 "ls2_alu") | 159 "ls2_alu") |
160 | 160 |
161 ;; Reservation for branch instructions. | 161 ;; Reservation for branch instructions. |
162 (define_insn_reservation "ls2_branch" 2 | 162 (define_insn_reservation "ls2_branch" 2 |
163 (and (eq_attr "cpu" "loongson_2e,loongson_2f") | 163 (and (eq_attr "cpu" "loongson_2e,loongson_2f") |