Mercurial > hg > CbC > CbC_gcc
comparison gcc/config/rs6000/darwin.md @ 67:f6334be47118
update gcc from gcc-4.6-20100522 to gcc-4.6-20110318
author | nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 22 Mar 2011 17:18:12 +0900 |
parents | a06113de4d67 |
children | 04ced10e8804 |
comparison
equal
deleted
inserted
replaced
65:65488c3d617d | 67:f6334be47118 |
---|---|
1 /* Machine description patterns for PowerPC running Darwin (Mac OS X). | 1 /* Machine description patterns for PowerPC running Darwin (Mac OS X). |
2 Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. | 2 Copyright (C) 2004, 2005, 2007, 2010 Free Software Foundation, Inc. |
3 Contributed by Apple Computer Inc. | 3 Contributed by Apple Computer Inc. |
4 | 4 |
5 This file is part of GCC. | 5 This file is part of GCC. |
6 | 6 |
7 GNU CC is free software; you can redistribute it and/or modify | 7 GNU CC is free software; you can redistribute it and/or modify |
139 [(set_attr "type" "store") | 139 [(set_attr "type" "store") |
140 (set_attr "length" "4")]) | 140 (set_attr "length" "4")]) |
141 | 141 |
142 ;; 64-bit MachO load/store support | 142 ;; 64-bit MachO load/store support |
143 (define_insn "movdi_low" | 143 (define_insn "movdi_low" |
144 [(set (match_operand:DI 0 "gpc_reg_operand" "=r") | 144 [(set (match_operand:DI 0 "gpc_reg_operand" "=r,*!d") |
145 (mem:DI (lo_sum:DI (match_operand:DI 1 "gpc_reg_operand" "b") | 145 (mem:DI (lo_sum:DI (match_operand:DI 1 "gpc_reg_operand" "b,b") |
146 (match_operand 2 "" ""))))] | 146 (match_operand 2 "" ""))))] |
147 "TARGET_MACHO && TARGET_64BIT" | 147 "TARGET_MACHO && TARGET_64BIT" |
148 "{l|ld} %0,lo16(%2)(%1)" | 148 "@ |
149 {l|ld} %0,lo16(%2)(%1) | |
150 lfd %0,lo16(%2)(%1)" | |
149 [(set_attr "type" "load") | 151 [(set_attr "type" "load") |
150 (set_attr "length" "4")]) | 152 (set_attr "length" "4")]) |
151 | 153 |
152 (define_insn "movsi_low_st" | 154 (define_insn "movsi_low_st" |
153 [(set (mem:SI (lo_sum:SI (match_operand:SI 1 "gpc_reg_operand" "b") | 155 [(set (mem:SI (lo_sum:SI (match_operand:SI 1 "gpc_reg_operand" "b") |
157 "{st|stw} %0,lo16(%2)(%1)" | 159 "{st|stw} %0,lo16(%2)(%1)" |
158 [(set_attr "type" "store") | 160 [(set_attr "type" "store") |
159 (set_attr "length" "4")]) | 161 (set_attr "length" "4")]) |
160 | 162 |
161 (define_insn "movdi_low_st" | 163 (define_insn "movdi_low_st" |
162 [(set (mem:DI (lo_sum:DI (match_operand:DI 1 "gpc_reg_operand" "b") | 164 [(set (mem:DI (lo_sum:DI (match_operand:DI 1 "gpc_reg_operand" "b,b") |
163 (match_operand 2 "" ""))) | 165 (match_operand 2 "" ""))) |
164 (match_operand:DI 0 "gpc_reg_operand" "r"))] | 166 (match_operand:DI 0 "gpc_reg_operand" "r,*!d"))] |
165 "TARGET_MACHO && TARGET_64BIT" | 167 "TARGET_MACHO && TARGET_64BIT" |
166 "{st|std} %0,lo16(%2)(%1)" | 168 "@ |
169 {st|std} %0,lo16(%2)(%1) | |
170 stfd %0,lo16(%2)(%1)" | |
167 [(set_attr "type" "store") | 171 [(set_attr "type" "store") |
168 (set_attr "length" "4")]) | 172 (set_attr "length" "4")]) |
169 | 173 |
170 ;; Mach-O PIC trickery. | 174 ;; Mach-O PIC trickery. |
171 (define_expand "macho_high" | 175 (define_expand "macho_high" |