Skip to content
Snippets Groups Projects
Commit eb2df7a8 authored by dtc's avatar dtc
Browse files

Add guards to those VOPS that use the cmpxchg instruction which was

first introduced with the i486.
parent 729f1c0c
No related branches found
No related tags found
No related merge requests found
......@@ -7,7 +7,7 @@
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/cell.lisp,v 1.11 1999/12/08 14:19:19 dtc Exp $")
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/cell.lisp,v 1.12 2000/08/20 14:44:23 dtc Exp $")
;;;
;;; **********************************************************************
;;;
......@@ -343,6 +343,7 @@
(:temporary (:sc descriptor-reg :offset eax-offset
:from (:argument 2) :to :result :target result) eax)
(:results (result :scs (descriptor-reg any-reg)))
(:guard (backend-featurep :i486))
(:policy :fast-safe)
(:generator 5
(move eax old-value)
......
......@@ -7,7 +7,7 @@
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/macros.lisp,v 1.14 1999/12/08 14:19:20 dtc Exp $")
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/macros.lisp,v 1.15 2000/08/20 14:44:23 dtc Exp $")
;;;
;;; **********************************************************************
;;;
......@@ -439,6 +439,7 @@
:from (:argument 2) :to :result :target result) eax)
(:results (result :scs ,scs))
(:result-types ,el-type)
(:guard (backend-featurep :i486))
(:generator 5
(move eax old-value)
(inst cmpxchg (make-ea :dword :base object :index index :scale 1
......@@ -458,6 +459,7 @@
:from (:argument 1) :to :result :target result) eax)
(:results (result :scs ,scs))
(:result-types ,el-type)
(:guard (backend-featurep :i486))
(:generator 4
(move eax old-value)
(inst cmpxchg (make-ea :dword :base object
......
......@@ -7,7 +7,7 @@
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/memory.lisp,v 1.7 1999/12/08 14:19:20 dtc Exp $")
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/memory.lisp,v 1.8 2000/08/20 14:44:23 dtc Exp $")
;;;
;;; **********************************************************************
;;;
......@@ -92,6 +92,7 @@
:from (:argument 1) :to :result :target result) eax)
(:variant-vars offset lowtag)
(:results (result :scs (descriptor-reg any-reg)))
(:guard (backend-featurep :i486))
(:generator 4
(move eax old-value)
(inst cmpxchg (make-ea :dword :base object
......@@ -161,6 +162,7 @@
(:variant-vars base lowtag)
(:results (result :scs (descriptor-reg any-reg)))
(:info offset)
(:guard (backend-featurep :i486))
(:generator 4
(move eax old-value)
(inst cmpxchg (make-ea :dword :base object
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment