1;; Constraint definitions for eBPF. 2;; Copyright (C) 2019-2020 Free Software Foundation, Inc. 3;; 4;; This file is part of GCC. 5;; 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 8;; the Free Software Foundation; either version 3, or (at your option) 9;; any later version. 10;; 11;; GCC is distributed in the hope that it will be useful, 12;; but WITHOUT ANY WARRANTY; without even the implied warranty of 13;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14;; GNU General Public License for more details. 15;; 16;; You should have received a copy of the GNU General Public License 17;; along with GCC; see the file COPYING3. If not see 18;; <http://www.gnu.org/licenses/>. 19 20(define_constraint "I" 21 "A 32-bit signed immediate." 22 (and (match_code "const_int") 23 (match_test "IN_RANGE (ival, -1 - 0x7fffffff, 0x7fffffff)"))) 24 25(define_constraint "B" 26 "A constant argument for LDDW." 27 (match_code "const,symbol_ref,label_ref,const_double,const_int")) 28 29(define_constraint "S" 30 "A constant call address." 31 (match_code "const,symbol_ref,label_ref,const_int")) 32 33