Closed Bug 838469 Opened 12 years ago Closed 12 years ago

IonMonkey: Use CallInfo for inlining natives

Categories

(Core :: JavaScript Engine, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla21

People

(Reporter: sstangl, Unassigned)

References

Details

Attachments

(1 file)

Attached patch patch (deleted) — Splinter Review
Uses CallInfo when inlining natives -- part of a cleanup effort that's a prerequisite for Bug 837312. There are some subtleties: most importantly, argv[n] is now callInfo.getArg(n-1), with explicit functions added for querying |this| to match the CallInfo interface. Passes jit-tests.
Attachment #710517 - Flags: review?(hv1989)
Comment on attachment 710517 [details] [diff] [review] patch Review of attachment 710517 [details] [diff] [review]: ----------------------------------------------------------------- Cool, thanks for doing this! FYI getInlineThisTypeSet/getInlineArgTypeSet will go into CallInfo as of bug 796114 ::: js/src/ion/MCallOptimize.cpp @@ +540,5 @@ > if (getInlineReturnType() != MIRType_Double) > return InliningStatus_NotInlined; > > + MIRType arg0Type = getInlineArgType(callInfo, 0); > + MIRType arg1Type = getInlineArgType(callInfo, 1); Because you name the args a little bit later, I would name their type with ***Type s/arg0Type/baseType s/arg1Type/exponentType @@ +550,5 @@ > > + callInfo.unwrapArgs(); > + > + MDefinition *input = callInfo.getArg(0); > + MDefinition *power = callInfo.getArg(1); I think the names for the inputs to a power is base and exponent s/input/base s/power/exponent
Attachment #710517 - Flags: review?(hv1989) → review+
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla21
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: