Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
cmucl
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Carl Shapiro
cmucl
Commits
8c0f56ae
Commit
8c0f56ae
authored
26 years ago
by
pw
Browse files
Options
Downloads
Patches
Plain Diff
Remove obsolete :x86-lra feature dependent code.
parent
bde871c1
No related branches found
No related tags found
No related merge requests found
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
assembly/x86/support.lisp
+1
-14
1 addition, 14 deletions
assembly/x86/support.lisp
compiler/x86/call.lisp
+4
-79
4 additions, 79 deletions
compiler/x86/call.lisp
compiler/x86/nlx.lisp
+1
-15
1 addition, 15 deletions
compiler/x86/nlx.lisp
compiler/x86/static-fn.lisp
+1
-17
1 addition, 17 deletions
compiler/x86/static-fn.lisp
with
7 additions
and
125 deletions
assembly/x86/support.lisp
+
1
−
14
View file @
8c0f56ae
...
...
@@ -7,7 +7,7 @@
;;; Scott Fahlman or slisp-group@cs.cmu.edu.
;;;
(
ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/x86/support.lisp,v 1.
1
199
7
/0
1/21 00:30:28 ram Exp
$"
)
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/assembly/x86/support.lisp,v 1.
2
199
8
/0
6/16 18:20:43 pw Rel
$"
)
;;;
;;; **********************************************************************
;;;
...
...
@@ -26,23 +26,10 @@
nil
))
(
:full-call
(
values
#-
x86-lra
`
((
note-this-location
,
vop
:call-site
)
(
inst
call
(
make-fixup
',name
:assembly-routine
))
(
note-this-location
,
vop
:single-value-return
)
(
move
esp-tn
ebx-tn
))
#+
x86-lra
`
((
note-this-location
,
vop
:call-site
)
(
inst
push
(
make-fixup
nil
:code-object
return
))
(
inst
jmp
(
make-fixup
',name
:assembly-routine
))
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
)
RETURN
(
note-this-location
,
vop
:single-value-return
)
(
move
esp-tn
ebx-tn
))
'
((
:save-p
:compute-only
))))
(
:none
(
values
...
...
This diff is collapsed.
Click to expand it.
compiler/x86/call.lisp
+
4
−
79
View file @
8c0f56ae
...
...
@@ -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/call.lisp,v 1.1
4
1998/0
2
/1
9
1
9:34:47 dtc
Exp $"
)
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/call.lisp,v 1.1
5
1998/0
6
/1
6
1
8:20:44 pw
Exp $"
)
;;;
;;; **********************************************************************
;;;
...
...
@@ -571,13 +571,6 @@
(
note-this-location
vop
:call-site
)
(
inst
jmp
target
)
#+
x86-lra
(
progn
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
))
RETURN
(
default-unknown-values
vop
values
nvals
)
(
trace-table-entry
trace-table-normal
)))
...
...
@@ -619,13 +612,6 @@
(
note-this-location
vop
:call-site
)
(
inst
jmp
target
)
#+
x86-lra
(
progn
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
))
RETURN
(
note-this-location
vop
:unknown-return
)
(
receive-unknown-values
values-start
nvals
start
count
)
...
...
@@ -676,13 +662,6 @@
(
note-this-location
vop
:call-site
)
(
inst
jmp
target
)
#+
x86-lra
(
progn
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
))
RETURN
(
note-this-location
vop
:known-return
)
(
trace-table-entry
trace-table-normal
)))
...
...
@@ -903,10 +882,7 @@
,@
(
when
(
eq
return
:tail
)
'
((
:temporary
(
:sc
unsigned-reg
:from
(
:argument
1
)
:to
(
:argument
2
))
old-fp-tmp
)
#+
x86-lra
(
:temporary
(
:sc
unsigned-reg
:from
(
:argument
2
)
:to
(
:argument
3
))
ret-pc-tmp
)))
:from
(
:argument
1
)
:to
(
:argument
2
))
old-fp-tmp
)))
(
:generator
,
(
+
(
if
named
5
0
)
(
if
variable
19
1
)
...
...
@@ -959,17 +935,6 @@
(
format
t
"** tail-call old-fp in reg not S0~%"
)
(
storew
old-fp
ebp-tn
(
-
(
1+
ocfp-save-offset
)))))
#+
x86-lra
(
sc-case
return-pc
((
sap-stack
)
(
unless
(
=
return-pc-save-offset
(
tn-offset
return-pc
))
(
format
t
"** tail-call ret-pc not S1~%"
)
(
move
ret-pc-tmp
return-pc
)
(
storew
ret-pc-tmp
ebp-tn
(
-
(
1+
return-pc-save-offset
)))))
((
sap-reg
)
(
format
t
"** tail-call ret-pc in reg not S1~%"
)
(
storew
return-pc
ebp-tn
(
-
(
1+
return-pc-save-offset
)))))
;; For tail call, we have to push the return-pc so
;; that it looks like we CALLed despite the fact that
;; we are going to JMP.
...
...
@@ -995,22 +960,12 @@
(
storew
ebp-tn
new-fp
(
-
(
1+
ocfp-save-offset
)))
;; Save the return address.
#+
x86-lra
(
storew
(
make-fixup
nil
:code-object
return
)
new-fp
(
-
(
1+
return-pc-save-offset
)))
(
move
ebp-tn
new-fp
)
; NB - now on new stack frame.
;; Push the return address.
#+
x86-lra
(
inst
push
(
make-fixup
nil
:code-object
return
))
; (inst push (make-ea :dword :base new-fp :disp -8))
))
)
(
note-this-location
vop
:call-site
)
#-
x86-lra
(
inst
,
(
if
(
eq
return
:tail
)
'jmp
'call
)
(
make-ea
:dword
:base
eax
:disp
,
(
if
named
...
...
@@ -1018,42 +973,12 @@
other-pointer-type
)
'
(
-
(
*
closure-function-slot
word-bytes
)
function-pointer-type
))))
#+
x86-lra
(
inst
jmp
(
make-ea
:dword
:base
eax
:disp
,
(
if
named
'
(
-
(
*
fdefn-raw-addr-slot
word-bytes
)
other-pointer-type
)
'
(
-
(
*
closure-function-slot
word-bytes
)
function-pointer-type
))))
,@
(
ecase
return
(
:fixed
#+
x86-lra
'
((
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
)
RETURN
(
default-unknown-values
vop
values
nvals
))
#-
x86-lra
'
((
default-unknown-values
vop
values
nvals
))
)
'
((
default-unknown-values
vop
values
nvals
)))
(
:unknown
#+
x86-lra
'
((
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
)
RETURN
(
note-this-location
vop
:unknown-return
)
(
receive-unknown-values
values-start
nvals
start
count
))
#-
x86-lra
'
((
note-this-location
vop
:unknown-return
)
(
receive-unknown-values
values-start
nvals
start
count
))
)
(
receive-unknown-values
values-start
nvals
start
count
)))
(
:tail
))
(
trace-table-entry
trace-table-normal
))))
...
...
This diff is collapsed.
Click to expand it.
compiler/x86/nlx.lisp
+
1
−
15
View file @
8c0f56ae
...
...
@@ -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/nlx.lisp,v 1.1
1
1998/0
2
/1
9
1
9:35:01 dtc
Exp $"
)
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/nlx.lisp,v 1.1
2
1998/0
6
/1
6
1
8:20:44 pw
Exp $"
)
;;;
;;; **********************************************************************
;;;
...
...
@@ -224,13 +224,6 @@
(
:save-p
:force-to-stack
)
(
:vop-var
vop
)
(
:generator
30
#+
x86-lra
(
progn
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
))
(
emit-label
label
)
(
note-this-location
vop
:non-local-entry
)
...
...
@@ -266,12 +259,5 @@
(
:ignore
block
start
count
)
(
:vop-var
vop
)
(
:generator
0
#+
x86-lra
(
progn
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
))
(
emit-label
label
)
(
note-this-location
vop
:non-local-entry
)))
This diff is collapsed.
Click to expand it.
compiler/x86/static-fn.lisp
+
1
−
17
View file @
8c0f56ae
...
...
@@ -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/static-fn.lisp,v 1.
4
1998/0
2
/1
9
1
9:35:04 dtc
Exp $"
)
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/static-fn.lisp,v 1.
5
1998/0
6
/1
6
1
8:20:45 pw
Exp $"
)
;;;
;;; **********************************************************************
;;;
...
...
@@ -115,25 +115,9 @@
;; low tag of 1 added. When the nil symbol value with its
;; low tag of 3 is added the resulting value points to the
;; raw address slot of the fdefn (at +4).
#-
x86-lra
(
inst
call
(
make-ea
:dword
:disp
(
+
nil-value
(
static-function-offset
function
))))
#+
x86-lra
(
progn
;; Push the return address.
(
inst
push
(
make-fixup
nil
:code-object
return
))
(
inst
jmp
(
make-ea
:dword
:disp
(
+
nil-value
(
static-function-offset
function
))))
(
align
lowtag-bits
#x90
)
(
inst
lra-header-word
)
(
inst
nop
)
(
inst
nop
)
(
inst
nop
))
#+
x86-lra
RETURN
,
(
collect
((
bindings
)
(
links
))
(
do
((
temp
(
temp-names
)
(
cdr
temp
))
(
name
'values
(
gensym
))
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment