The default bug view has changed. See this FAQ.

IonMonkey: Share ValueOperand manipulation.

RESOLVED FIXED

Status

()

Core
JavaScript Engine
RESOLVED FIXED
6 years ago
6 years ago

People

(Reporter: nbp, Assigned: nbp)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Assignee)

Description

6 years ago
Due to different register size, the current method used for manipulating Value is dependent on the architecture.  This implies that Trampoline code for x86/x64 is architecture where most of it could be shared.

In this issue I suggest to foster usage of ValueOperand and manipulation of ValueOperand instead of *_Type & *_Data (for x86) or specific moves.

Adding such features will reduce the effort needed for maintaining or extending operations on all architecture by reducing the base code.  This should not impact at run-time because sharing function interfaces without making the function virtual in the specific macro-assemblers imply that functions would be either inlined or at worst statically linked.
(Assignee)

Comment 1

6 years ago
Created attachment 566227 [details] [diff] [review]
Simply manipulation of Values
Assignee: general → npierron
Status: NEW → ASSIGNED
Attachment #566227 - Flags: review?(dvander)
Comment on attachment 566227 [details] [diff] [review]
Simply manipulation of Values

Review of attachment 566227 [details] [diff] [review]:
-----------------------------------------------------------------

Functions that take Operand and ValueOperand should take them as const ... &, r=me with that
Attachment #566227 - Flags: review?(dvander) → review+
(Assignee)

Comment 3

6 years ago
Created attachment 567761 [details] [diff] [review]
Simply manipulation of Values

Update. (old patch: r=dvander)
Attachment #566227 - Attachment is obsolete: true
Attachment #567761 - Flags: review+
http://hg.mozilla.org/projects/ionmonkey/rev/a9881c4374e7
Status: ASSIGNED → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.