diff --git a/compiler/ppc/insts.lisp b/compiler/ppc/insts.lisp index d4287cea556a346c6de5cb5477920ec360f3f21c..a0b099693c8ad2426b253320b2438407c10ee88a 100644 --- a/compiler/ppc/insts.lisp +++ b/compiler/ppc/insts.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman or slisp-group@cs.cmu.edu. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ppc/insts.lisp,v 1.14 2005/09/29 02:45:05 rtoy Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ppc/insts.lisp,v 1.15 2005/09/29 03:10:14 rtoy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -1473,6 +1473,7 @@ about function addresses and register values.") (:emitter (emit-x-form-inst segment 19 (valid-bo-encoding bo) (valid-bi-encoding bi) 0 528 1))) +;; Really a bcctr inst (define-instruction bctr (segment) (:printer xl-bo-bi ((op 19) (xo 528) (bo #.(valid-bo-encoding :bo-u)) (bi 0) (lk 0)) '(:name)) (:attributes branch) @@ -1481,6 +1482,15 @@ about function addresses and register values.") (:emitter (emit-x-form-inst segment 19 #.(valid-bo-encoding :bo-u) 0 0 528 0))) +;; Really a bclrl inst +(define-instruction blrl (segment) + (:printer xl-bo-bi ((op 19) (xo 16) (bo #.(valid-bo-encoding :bo-u)) (bi 0) (lk 1)) '(:name)) + (:attributes branch) + (:delay 1) + (:dependencies (reads :ccr) (reads :ctr)) + (:emitter + (emit-x-form-inst segment 19 #.(valid-bo-encoding :bo-u) 0 0 16 1))) + (define-instruction bctrl (segment) (:printer xl-bo-bi ((op 19) (xo 528) (bo #.(valid-bo-encoding :bo-u)) (bi 0) (lk 1)) '(:name)) (:attributes branch) @@ -2240,10 +2250,6 @@ about function addresses and register values.") |# -(define-instruction-macro blrl () - `(inst bclrl :bo-u 0)) - - ;;; Some more macros