Last Comment Bug 693609 - IonMonkey: Share ValueOperand manipulation.
: IonMonkey: Share ValueOperand manipulation.
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: All All
: -- normal (vote)
: ---
Assigned To: Nicolas B. Pierron [:nbp]
:
: Jason Orendorff [:jorendorff]
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-10-11 08:06 PDT by Nicolas B. Pierron [:nbp]
Modified: 2011-10-19 23:37 PDT (History)
3 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Simply manipulation of Values (7.74 KB, patch)
2011-10-11 08:25 PDT, Nicolas B. Pierron [:nbp]
dvander: review+
Details | Diff | Splinter Review
Simply manipulation of Values (7.81 KB, patch)
2011-10-18 08:48 PDT, Nicolas B. Pierron [:nbp]
nicolas.b.pierron: review+
Details | Diff | Splinter Review

Description Nicolas B. Pierron [:nbp] 2011-10-11 08:06:46 PDT
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.
Comment 1 Nicolas B. Pierron [:nbp] 2011-10-11 08:25:27 PDT
Created attachment 566227 [details] [diff] [review]
Simply manipulation of Values
Comment 2 David Anderson [:dvander] 2011-10-17 09:52:44 PDT
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
Comment 3 Nicolas B. Pierron [:nbp] 2011-10-18 08:48:46 PDT
Created attachment 567761 [details] [diff] [review]
Simply manipulation of Values

Update. (old patch: r=dvander)
Comment 4 David Anderson [:dvander] 2011-10-19 23:37:52 PDT
http://hg.mozilla.org/projects/ionmonkey/rev/a9881c4374e7

Note You need to log in before you can comment on or make changes to this bug.