Mercurial > hg > CbC > CbC_gcc
comparison gcc/config/lm32/constraints.md @ 55:77e2b8dfacca gcc-4.4.5
update it from 4.4.3 to 4.5.0
author | ryoma <e075725@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 12 Feb 2010 23:39:51 +0900 |
parents | |
children | 04ced10e8804 |
comparison
equal
deleted
inserted
replaced
52:c156f1bd5cd9 | 55:77e2b8dfacca |
---|---|
1 ;; Constraint definitions for Lattice Mico32 architecture. | |
2 ;; Contributed by Jon Beniston <jon@beniston.com> | |
3 ;; | |
4 ;; Copyright (C) 2009 Free Software Foundation, Inc. | |
5 ;; | |
6 ;; This file is part of GCC. | |
7 ;; | |
8 ;; GCC is free software; you can redistribute it and/or modify | |
9 ;; it under the terms of the GNU General Public License as published by | |
10 ;; the Free Software Foundation; either version 3, or (at your option) | |
11 ;; any later version. | |
12 ;; | |
13 ;; GCC is distributed in the hope that it will be useful, | |
14 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 ;; GNU General Public License for more details. | |
17 ;; | |
18 ;; You should have received a copy of the GNU General Public License | |
19 ;; along with GCC; see the file COPYING3. If not see | |
20 ;; <http://www.gnu.org/licenses/>. | |
21 | |
22 (define_constraint "J" | |
23 "The value 0." | |
24 (and (match_code "const_int") | |
25 (match_test "ival == 0"))) | |
26 | |
27 (define_constraint "K" | |
28 "A signed 16-bit immediate in the range -32768 to 32767." | |
29 (and (match_code "const_int") | |
30 (match_test "IN_RANGE (ival, -32768, 32767)"))) | |
31 | |
32 (define_constraint "L" | |
33 "An unsigned 16-bit immediate in the range 0 to 65535." | |
34 (and (match_code "const_int") | |
35 (match_test "IN_RANGE (ival, 0, 65535)"))) | |
36 | |
37 (define_constraint "M" | |
38 "The value 1." | |
39 (and (match_code "const_int") | |
40 (match_test "ival == 1"))) | |
41 | |
42 (define_constraint "U" | |
43 "A shifted signed 16-bit constant appropriate for orhi." | |
44 (and (match_code "const_int") | |
45 (match_test "(ival & 0xffff) == 0 | |
46 && (ival >> 31 == -1 || ival >> 31 == 0)"))) | |
47 | |
48 (define_constraint "S" | |
49 "A symbol in the small data section." | |
50 (match_operand 0 "no_pic_small_symbol")) | |
51 | |
52 (define_constraint "Y" | |
53 "A high part of a symbol." | |
54 (and (match_code "high") | |
55 (ior (ior (match_code "symbol_ref" "0") | |
56 (match_code "label_ref" "0")) | |
57 (match_code "const" "0")))) |