Compile intrinsics.abs into avmshell instead of loading separately.

NEW
Unassigned

Status

Tamarin
Virtual Machine
6 years ago
6 years ago

People

(Reporter: Edwin Smith, Unassigned)

Tracking

Details

Attachments

(1 attachment)

(Reporter)

Description

6 years ago
Created attachment 605511 [details] [diff] [review]
The failed attempt.

We now have intrinsics.abs in the test suite, containing a lot of wrappers for no-operand opcodes.  Before it landed, I attempted to have these functions compiled into avmshell, in the shell module.

The attempt failed miserably:

1. we have no easily-automatable tool for merging abcs, so i need to hack WAY too much C++ code, to add a second abc to the shell (separate from shell_toplevel.abc)

2. this in turn required several new .cpp files because of symbol conflicts caused by #including two generated .h or .cpp native thunk files in the same source file.

3. furthermore, nativegen.py and startup code in the vm break when there are 0 classes in an ABC.  bleh, I gave up.  Several corner cases will have to be fixed to make it work.
(Reporter)

Updated

6 years ago
Attachment #605511 - Attachment is patch: true
You need to log in before you can comment on or make changes to this bug.