From 37b6643df2df7d784a31ca73f7bb90dc109c2401 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Thu, 15 Dec 2005 07:26:47 +0000 Subject: removing PDP source (except debian files) before import of PDP 0.12.4 svn path=/trunk/externals/pdp/; revision=4217 --- scaf/compiler/optim.rules | 74 ----------------------------------------------- 1 file changed, 74 deletions(-) delete mode 100644 scaf/compiler/optim.rules (limited to 'scaf/compiler/optim.rules') diff --git a/scaf/compiler/optim.rules b/scaf/compiler/optim.rules deleted file mode 100644 index 282caf4..0000000 --- a/scaf/compiler/optim.rules +++ /dev/null @@ -1,74 +0,0 @@ -# Pure Data Packet - scaf optimization rules. -# Copyright (c) by Tom Schouten -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - -# this file contains scaf source optimization rules for scaf compiler -# applied after kernel word inlining and before compilation to asm - -# one rule that's not in here, and is the responsability for the -# final compilation step: "word ;" is "jmp word" instead of "call word ret" - -# TODO: think about order! - -# no discrimination between pre inline and post inline optimization ops yet - -# pre inline optimizations - -"over xor" -> "overxor" -"over and" -> "overand" -"over or" -> "overor" - -"drop 1" -> "dropone" -"drop 0" -> "dropzero" -"over add" -> "overadd" -"over addc" -> "overaddc" - -"dup !a0" -> "dupsta0" -"dup !a1" -> "dupsta1" -"dup !a2" -> "dupsta2" -"dup !a3" -> "dupsta3" - -"drop @a0" -> "droplda0" -"drop @a1" -> "droplda1" -"drop @a2" -> "droplda2" -"drop @a3" -> "droplda3" - -"drop ?anz" -> "dropisnonzero4" -"drop ?anz4" -> "dropisnonzero4" -"drop ?anz3" -> "dropisnonzero3" -"drop ?anz2" -> "dropisnonzero2" -"drop ?anz1" -> "dropisnonzero1" - -"drop @-+" -> "dropldTL" -"drop @0+" -> "dropldTM" -"drop @++" -> "dropldTR" -"drop @-0" -> "dropldML" -"drop @00" -> "dropldMM" -"drop @+0" -> "dropldMR" -"drop @--" -> "dropldBL" -"drop @0-" -> "dropldBM" -"drop @+-" -> "dropldBR" - - -# post inline optimizations - -"dup drop" -> "" -"swap drop" -> "nip" -"dup swap" -> "dup" -"drop dup" -> "dropdup" -"drop over" -> "dropover" -"nip dup" -> "nipdup" -- cgit v1.2.1