1(* 2 Copyright (c) 2017 David C.J. Matthews 3 4 This library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License version 2.1 as published by the Free Software Foundation. 7 8 This library is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11 Lesser General Public License for more details. 12 13 You should have received a copy of the GNU Lesser General Public 14 License along with this library; if not, write to the Free Software 15 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 16*) 17 18signature X86GETCONFLICTSETSIG = 19sig 20 type x86ICode and reg and preg and controlFlow and extendedBasicBlock 21 type intSet 22 23 type conflictState = 24 { 25 conflicts: intSet, realConflicts: reg list 26 } 27 28 val getConflictStates: extendedBasicBlock vector * int -> conflictState vector 29 30 structure Sharing: 31 sig 32 type x86ICode = x86ICode 33 and reg = reg 34 and preg = preg 35 and intSet = intSet 36 and extendedBasicBlock = extendedBasicBlock 37 end; 38end; 39