1(* 2 Copyright David C. J. Matthews 2018-19 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 X86ICODEOPTSIG = 19sig 20 type extendedBasicBlock and basicBlock and regProperty 21 22 datatype optimise = Changed of basicBlock vector * regProperty vector | Unchanged 23 24 val optimiseICode: 25 { code: extendedBasicBlock vector, pregProps: regProperty vector, ccCount: int, 26 debugSwitches: Universal.universal list } -> optimise 27 28 structure Sharing: 29 sig 30 type extendedBasicBlock = extendedBasicBlock 31 and basicBlock = basicBlock 32 and regProperty = regProperty 33 and optimise = optimise 34 end 35end; 36