x86-64: reimplement symbol-value vop
commiteed02ccc80b88dae07a2a3da61efb38c47b54ff1
authorDouglas Katzman <dougk@google.com>
Thu, 19 Oct 2017 00:13:04 +0000 (18 20:13 -0400)
committerDouglas Katzman <dougk@google.com>
Thu, 19 Oct 2017 00:13:04 +0000 (18 20:13 -0400)
treeb4cdfa6f8b389e84866c80bc2b3ef759e1bf1632
parentb5491dad9d2e582536e81f68057ee45388bb55d1
x86-64: reimplement symbol-value vop

It produces between 1 and 6 instructions not counting the error trap.

Remove extra vops for static symbols. There aren't enough to matter.

Add regression tests.
src/code/cross-type.lisp
src/compiler/generic/vm-type.lisp
src/compiler/ir2tran.lisp
src/compiler/x86-64/cell.lisp
src/compiler/x86-64/macros.lisp
src/compiler/x86-64/memory.lisp
tests/x86-64-codegen.impure.lisp [new file with mode: 0644]