Closed Bug 525411 Opened 16 years ago Closed 16 years ago

lirasm: fix CallInfo problems

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: n.nethercote, Assigned: n.nethercote)

Details

(Whiteboard: fixed-in-nanojit, fixed-in-tracemonkey)

Attachments

(1 file)

Attached patch patchSplinter Review
The handling of calls in lirasm is currently screwy. In particular, we infer the CallInfo details of a function entirely from the call site. But we currently get the arg types wrong in some cases on X64. This patch fixes this. Furthermore, for built-in functions, inferring isn't a good idea, we should check the call site details against the existing CallInfo details instead. So the patch does that as well. This will catch some asm code errors. Also, calling blocks by their address (eg. "call 0x1234 fastcall") seems like a terrible idea and isn't currently used AFAICT. So I removed this functionality. As a result of this patch, a couple of the lirasm tests that previously asserted on X64 now pass.
Attachment #409288 - Flags: review?(graydon)
Attachment #409288 - Flags: review?(graydon) → review+
Whiteboard: fixed-in-nanojit → fixed-in-nanojit, fixed-in-tracemonkey
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: