bugGNU Octave - Bugs: bug #64829, Refactor bytecode interpreter...


bug #64829: Refactor bytecode interpreter subsref and call dispatch, cache lookup

Submitter:  Petter <petter>
Submitted:  Sat 28 Oct 2023 01:22:47 PM UTC
Category:  Interpreter Severity:  3 - Normal
Priority:  5 - Normal Item Group:  None
Status:  Ready For Test Assigned to:  None
Originator Name:  Open/Closed:  * Open
Release:  * dev Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup

Sat 25 Nov 2023 03:26:08 PM UTC, comment #2: 

I've pushed the following change to avoid the symbol conflicts with that enumeration:

Leaving status as ready for test.

Markus Mützel <mmuetzel>
Group administrator
Sun 05 Nov 2023 09:38:15 AM UTC, comment #1: 

One of the changesets pushed for this report adds an identifier `HANDLE` to a public header. This identifier collides with the WINAPI.
Please consider prefixing identifiers in public headers with `OCTAVE_` or `OCT_`.

@arungiridhar: Like I already wrote in other places: I'd really appreciate if you could add the bug report number to the commit message before pushing changes to the repo. It was already difficult to find the correct report after a couple of days. And it will be close to impossible after some more time without that information in the commit message.

Markus Mützel <mmuetzel>
Group administrator
Sat 28 Oct 2023 01:22:47 PM UTC, original submission:  

Three patches that refactors the bytecode interpreter subsref and call dispatch, to avoid a lot of "is the thing this or that but not that" checks. And a patch that allows function cache argument type queries without having to allocate a container.

Add function to octave_value:s that decides dispath type for ()-indexing - octave_32623.patch
Lookup function cache with arguments on the bytecode vm stack - octave_32624.patch
Refactor bytecode interpreter to use new functions - octave_32625.patch

Petter <petter>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

Attached Files
file #55278:  octave_32623.patch added by petter (8KiB - text/plain)
file #55279:  octave_32624.patch added by petter (10KiB - text/plain)
file #55280:  octave_32625.patch added by petter (52KiB - text/plain)


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by mmuetzel (Posted a comment)
  • -email is unavailable- added by arungiridhar (Updated the item)
  • -email is unavailable- added by petter (Submitted the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.


    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2023-10-28 arungiridhar StatusNone Ready For Test
    2023-10-28 petter Attached File- Added octave_32623.patch, #55278
        Attached File- Added octave_32624.patch, #55279
        Attached File- Added octave_32625.patch, #55280

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code