[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Help with adding an auxiliary bytecode table
From: |
Alex Gramiak |
Subject: |
Help with adding an auxiliary bytecode table |
Date: |
Thu, 18 Apr 2019 09:53:22 -0600 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
I've attached a diff below that adds an auxiliary optable to bytecode.c
and attempts to integrate it into bytecode.el. I can run emacs -Q with
it, but when I run it with my configuration I get the following in
stderr:
Invalid function: ((bytecomp "Wrong type argument: arrayp, nil" :error
"*Compile-Log*"))
And then Emacs aborts (--debug-init doesn't change this). Would someone
with experience in the bytecompiler be so kind as to help me fix this?
My initial reaction is that the stale bytecode is somehow incompatible,
but then why does emacs -Q run fine?
Flymake in every elisp buffer is reporting that the first require or
provide in the buffer contains a "Wrong type argument: arrayp, nil".
Background:
I wanted to add a new search procedure for vectors that was faster than
memq, and vector-memq turns out to be. The problem is that since memq is
a bytecode operation, it turns out to be faster than vector-memq for
small input unless I make sure that memq isn't turned into a bytecode
op. So since the current space in the lookup table is limited, I figured
that a prefix command that looks up in a secondary table would be a good
solution.
aux-table.diff
Description: bytecode
- Help with adding an auxiliary bytecode table,
Alex Gramiak <=