Luke Wagner
89799b298a
Bug 541456 - change ConvertSupportsTojsvals not to use js_AllocStack (r=jst)
2010-01-25 08:48:07 -08:00
Igor Bukanov
836b8a84eb
bug 540805 - using reference counting only for empty scopes. r=jorendorff
2010-01-27 09:50:17 +03:00
Vladimir Vukicevic
10bddbda2d
b=542395; really enable typed array tracing and support JSOP_LENGTH; r=gal
2010-01-26 21:45:11 -08:00
Jeff Walden
de3dc07e82
Rearrange jsbuiltins.h's list of traceable natives by file. No bug, r=sparky
2010-01-26 18:20:04 -08:00
Igor Bukanov
7227718637
bug 541790 - do not purge again if the GC restarts. r=jorendorf
2010-01-26 22:27:09 +03:00
Luke Wagner
4040498e00
Fix ARM bustage, part deux
2010-01-26 04:41:00 -08:00
Nicholas Nethercote
8498d179bc
Bug 541886 - nanojit: move compile() into class Assembler (TM-specific part). r=dvander.
2010-01-26 14:06:13 +11:00
Nicholas Nethercote
7eb8623d12
Update nanojit-import-rev stamp.
2010-01-26 13:48:19 +11:00
Nicholas Nethercote
09e7e8d0a8
Bug 541886 - nanojit: move compile() into class Assembler. r=rreitmai.
...
--HG--
extra : convert_revision : f3506c693a7e8b7af089367313cbe960d7e2607f
2010-01-26 13:38:15 +11:00
Steven Johnson
1f13f206c4
Init rb to UnspecifiedReg in asm_fop (x64) to pacify compiler
...
--HG--
extra : convert_revision : 1cae250cda3ca1765fc3de8e057dccdd4522c358
2010-01-25 15:23:34 -08:00
Steven Johnson
f0de53c1ce
remove unused-parameter warning from Assembler::hint() in NativeX64.cpp to fix Linux64 build breakage
...
--HG--
extra : convert_revision : 5db4de482aca2e102551560de084c33bd4db2bc8
2010-01-25 15:04:22 -08:00
Steven Johnson
9c26cf7691
fix obviously wrong call to getTarget() in ValidateReader::read() for LIR_jtbl (r=me)
...
--HG--
extra : convert_revision : 0a24446567224c42ee3f421627ea644976fea3de
2010-01-25 11:56:01 -08:00
Steven Johnson
e0fe64337d
implement EXPANDED_LOADSTORE for ARM (code=vladimir,stejohns; r=vladimir,rreitmai; bug=534765)
...
--HG--
extra : convert_revision : 75f0d95c8bea8ceb0d9bb2dfd55aeb0d0d200bd1
2010-01-25 11:08:42 -08:00
Vladimir Vukicevic
dbeceb07e7
b=533659; tracing support for JS typed array types; r=gal
2010-01-25 17:06:36 -08:00
Graydon Hoare
a8e66a4bcd
Bug 526074 - handle nothing-to-import case in import script, r=gal.
2010-01-25 10:32:33 -08:00
Nicholas Nethercote
0789008cc7
Update nanojit-import-rev stamp.
2010-01-25 14:03:02 +11:00
Nicholas Nethercote
b2dcc26c38
Bug 538924 - nanojit: rework reservations. r=edwsmith.
...
--HG--
extra : convert_revision : 51a78a175b1074c933323e0bf24d6f64b5c6c35d
2010-01-25 10:39:36 +11:00
Nicholas Nethercote
fec7f356b0
ARM bustage fix for bug 540351.
...
--HG--
extra : convert_revision : 4a6d8a20be25e523d261f1754b0be90619fc0554
2010-01-25 09:44:47 +11:00
Nicholas Nethercote
a0704e558a
Bug 540351 - nanojit: refactor hint() and registerAlloc(). r=rreitmai.
...
--HG--
extra : convert_revision : fa4f34a51239317d312b9388f2eb9ca2631b463e
2010-01-25 09:40:11 +11:00
Nicholas Nethercote
126997f7d4
Bug 534313 - nanojit: split isQuad() into isI64() + isF64() + is64() (TM-specific part). r=dvander.
2010-01-25 08:50:38 +11:00
Nicholas Nethercote
402ef4a279
Update nanojit-import-rev stamp.
2010-01-25 08:36:49 +11:00
Nicholas Nethercote
43cc6ace57
Bug 534313 - nanojit: split isQuad() into isI64() + isF64() + is64(). r=dvander,stejohns.
...
--HG--
extra : convert_revision : f24a70adec4c24dffd3a9c6c3572c5755938291a
2010-01-25 08:25:04 +11:00
Steven Johnson
37c967beaf
nanojit/NativeARM.h: remove NJ_ARM_ARCH (code=bramley,r=stejohns,bug=541258)
...
--HG--
extra : convert_revision : cfcf246845a1fa07f60c791bdc471ed11a10351a
2010-01-22 12:39:57 -08:00
Edwin Smith
605b734ba8
(second try) Adds protect/unprotect API to CodeAlloc (bug 460993 r=nnethercote,rreitmai sr=gal)
...
Removes calls to VMPI_setPageProtection from CodeAlloc, and adds a new
protect/unprotect API to CodeAlloc, along with an SPI for the vm to implement
actual page protection.
It is up to the VM to call codeAlloc->protect() before executing jit'd code,
but CodeAlloc will internally call unprotect() before modifying blocks, as code
is generated. If the VM's implementation of allocCodePage allocates memory
as RWX, then the new protection api's can be ignored and the implementations
of markCodeChunkExec/Write can be empty functions.
A flag per code chunk is used so that only modified pages are unprotected and
reprotected.
CodeAlloc never calls VMPI_setPageProtection any more, so platform abstractions
for this can be encapsulated in the CodeAlloc SPI methods.
nanojit/avmplus.cpp was modified to call VMPI_setPageProtection on the platforms
that didn't already allocate code memory as RWX. Since those callsites are platform
specific and the only place we call VMPI_setPageProtection, the code could be further
simplified.
--HG--
extra : convert_revision : 3c9030f46c15cc0f033592db6ba96674e1f5173b
2010-01-22 15:18:12 -05:00
Igor Bukanov
450cf95e35
bug 538275 - ClaimTitle cleanup. r=brendan, jorendorff
2010-01-24 14:15:38 +03:00
Luke Wagner
b41eed1718
Fix ARM bustage
2010-01-22 16:15:24 -08:00
Luke Wagner
2645ecd2da
Bug 541452 - put jstracer.cpp in namespace js (r=jorendorff)
2010-01-22 14:49:18 -08:00
Brendan Eich
1699be3a87
Bug 541455 - Do not drop "mumble"; would-be directives in the parser, let them be completion values (or useless expressions for the emitter to cull) (r=jimb).
2010-01-22 12:17:13 -08:00
Luke Wagner
4f05b945eb
Bug 458421 - dead stuff in spidermonkey (r=jorendorff)
2010-01-22 11:52:17 -08:00
David Mandelin
7178b08092
Bug 541239: don't use upvar for variables in eval if they cross a generator, r=mrbkap
2010-01-21 17:06:11 -08:00
Nicholas Nethercote
f4bc73f777
Bustage fix for bug 463137: use insBranch() instead of ins2() to insert LIR_j. r=me.
2010-01-22 16:20:42 +11:00
Nicholas Nethercote
31c3c6d825
Bug 463137 - TM/nanojit: type-check LIR (TM-specific part). r=jseward.
2010-01-22 13:41:24 +11:00
Nicholas Nethercote
6a429f956a
Update nanojit-import-rev stamp.
2010-01-22 13:38:10 +11:00
Nicholas Nethercote
c1a35c54aa
Bug 521692 - NJ merge: don't check for error twice in Assembler::gen(). r=graydon.
...
--HG--
extra : convert_revision : c0257e13ea032510ed6ec3e1a6ea55c0fe98e614
2010-01-22 13:24:59 +11:00
Nicholas Nethercote
1706534709
Bustage fixes.
...
--HG--
extra : convert_revision : 7befbe058634dc37e2fcd614969fd92c64507096
2010-01-22 10:21:29 +11:00
Nicholas Nethercote
b98921836d
Bug 463137 - TM/nanojit: type-check LIR. r=jseward,rreitmai.
...
--HG--
extra : convert_revision : 162182c5cd78d5366c1ca3ea2ca9b11f40115942
2010-01-22 10:10:59 +11:00
David Mandelin
5bb1cfd035
Bug 540243: don't use JSOP_GETUPVAR if def-use chain crosses a generator lexical scope, r=mrbkap
2010-01-21 13:27:36 -08:00
David Mandelin
c4fb2d9d01
Bug 540528: don't reset scopeChain JSStackFrame when leaving trace if it was already set by interpreter, r=mrbkap
2010-01-19 19:06:40 -08:00
Nicholas Nethercote
da39dabdda
Update nanojit-import-rev stamp.
2010-01-22 08:49:51 +11:00
Nicholas Nethercote
451469e807
Whitespace-only change, to test if NJ/TM repo breakage has been fixed. r=graydon.
...
--HG--
extra : convert_revision : 141daad5d4d254008de9d129288917625cfdfb57
2010-01-22 08:49:19 +11:00
Nicholas Nethercote
4fff165564
Update nanojit-import-rev stamp (by hand, due to update-nanojit difficulties).
2010-01-22 08:44:35 +11:00
Nicholas Nethercote
3dd103b579
Backed out changeset (by hand due to update-nanojit difficulties) 69d5a3454a6e (bug 460993), avmplus.cpp changes were bogus.
2010-01-22 08:43:09 +11:00
David Mandelin
4013bf6772
Bug 540136: remove erroneously duplicated line of code from GetFromClosure, r=dvander
2010-01-21 11:08:08 -08:00
Nicholas Nethercote
e36831cff7
Avoid bogus uninit variable warning. r=gcc.
2010-01-21 13:12:02 +11:00
Nicholas Nethercote
a5a988c88c
Bug 539629 - lirasm: don't have two ways of running the tests (TM-specific part). r=graydon.
2010-01-21 13:07:59 +11:00
Nicholas Nethercote
7c98c2c366
Update nanojit-import-rev stamp.
2010-01-21 13:06:10 +11:00
Nicholas Nethercote
59368f63e2
Bug 539629 - lirasm: don't have two ways of running the tests (NJ-specific part). r=graydon.
...
--HG--
extra : convert_revision : c41f7c86b3cd3c2019189f941daa47f311959789
2010-01-21 12:59:56 +11:00
Edwin Smith
b1f006af09
Adds protect/unprotect API to CodeAlloc (bug 460993 r=nnethercote,rreitmai sr=gal)
...
Removes calls to VMPI_setPageProtection from CodeAlloc, and adds a new
protect/unprotect API to CodeAlloc, along with an SPI for the vm to implement
actual page protection.
It is up to the VM to call codeAlloc->protect() before executing jit'd code,
but CodeAlloc will internally call unprotect() before modifying blocks, as code
is generated. If the VM's implementation of allocCodePage allocates memory
as RWX, then the new protection api's can be ignored and the implementations
of markCodeChunkExec/Write can be empty functions.
A flag per code chunk is used so that only modified pages are unprotected and
reprotected.
CodeAlloc never calls VMPI_setPageProtection any more, so platform abstractions
for this can be encapsulated in the CodeAlloc SPI methods.
nanojit/avmplus.cpp was modified to call VMPI_setPageProtection on the platforms
that didn't already allocate code memory as RWX. Since those callsites are platform
specific and the only place we call VMPI_setPageProtection, the code could be further
simplified.
--HG--
extra : convert_revision : a1002278492b012b727550db2fb928faa6bee36b
2010-01-20 13:32:02 -05:00
Jeff Walden
9d7bbdf810
Bug 539488 - |var| statements for existing, read-only/permanent properties should not be errors. r=jorendorff
...
--HG--
extra : rebase_source : b052779036d0690b92c63e37412b7ae1ebabf4eb
2010-01-20 13:58:36 -08:00
Brendan Eich
92a357e272
Bug 540774: "Assertion failure: top < StackDepth(ss->printer->script)" decompiling upvar (r=jorendorff).
2010-01-20 16:28:18 -08:00