Commit Graph

1105 Commits

Author SHA1 Message Date
Nicholas Nethercote
51800259db Bug 623428 - TM: avoid bloat caused by multiple mReserve arrays in VMAllocator (NJ-specific part). r=edwsmith.
--HG--
extra : convert_revision : f6016c7c7cd415a26dad9cf39d34141b8b482d43
2011-01-18 14:58:34 -08:00
Nicholas Nethercote
3b27a0ff0e Make accNames[] public; needed for TM. No bug, r=me.
--HG--
extra : convert_revision : 4ca71b4e30e696851c0a7a934a0e73426cf8c2c7
2011-01-17 18:30:36 -08:00
Nicholas Nethercote
0de1758f1b Bug 624439 - Assertion failure: isS32(target - next) (./nanojit/NativeX64.cpp:2012). r=edwsmith.
--HG--
extra : convert_revision : c3c9fa2b440f1fa564b2f6195919e75ec3d00acf
2011-01-16 21:38:25 -08:00
Cédric VINCENT
75dfbc4853 Bug 602390 - New file for SH4 auto-generated code (r+rreitmai) [Cédric VINCENT]
.
. attachment 493930 - SH4: use non-numeric type for Register & move auto-generated code-generator back to a separated file.
.
Bug 599251 introduced the non-numeric Register type.  This back-end doesn't use it yet.  It should.  See the i386/X64 back-ends for examples.

--HG--
extra : convert_revision : eb3a73807a9c8b2cafe10908710f9cb2467d090d
2011-01-05 17:24:39 -08:00
Rick Reitmaier
4ed28d7e05 Bug 602390 - nanojit: make Register a non-numeric type on SH4 (r=nnethercote)
.
. attachment 485873 - fix asserts so we can compile
.
Bug 599251 introduced the non-numeric Register type.  This back-end doesn't use it yet.  It should.  See the i386/X64 back-ends for examples.

--HG--
extra : convert_revision : b681599a542687e6a9779227f2f21a86b69ee2a9
2011-01-05 17:24:32 -08:00
Rick Reitmaier
b5ae867e4c Bug 581553 - Display bytes values associated with an instruction (r+nnethercote)
--HG--
extra : convert_revision : 8e80b4cfa30dc93557d6fb6d3493758749547e2e
2011-01-05 11:27:35 -08:00
Rick Reitmaier
6b35e95ed3 Bug 614126 - Decouple CodeAlloc block size from allocation size (r+edwsmith,nnethercote)
--HG--
extra : convert_revision : 2c9dc64162bd57c225c4b8cd184dfcf6d03a2e5f
2011-01-05 10:55:31 -08:00
Edwin Smith
0486e22f7d Bug 620406 - Constant folding branch condition leads to assert in Assembler.cpp (r=nnethercote+)
--HG--
extra : convert_revision : 5797090820d1645fad3c0ee05865cecf8b6b190c
2010-12-21 20:30:32 -05:00
Bill McCloskey
238069d8ff Bug 623050 - Move tracerState to compartment (r=gal) 2011-01-12 16:56:23 -08:00
Nicholas Nethercote
1b9203534f Bug 580515 - TM: LIR_cmovd mishandled with X86_FORCE_SSE2=no. r=edwsmith.
--HG--
extra : convert_revision : 4effe362e918583ec7b98b08da24f02c0833d306
2010-12-01 14:23:44 -08:00
Nicholas Nethercote
b3756c22fb Bug 613125 - nanojit: improve codegen for LIR_q2i in X64 back-end. r=edwsmith.
--HG--
extra : convert_revision : 1f90e61950c44193ea5a1800c06d7dba8240cfd9
2010-11-18 19:36:11 -08:00
Cédric VINCENT
8be3071b20 Bug 587735 - redefine nRegisterAllocFromSet in terms of lsReg or msReg (r=edwsmith)
--HG--
extra : convert_revision : 69db0577a9fa38579d2c2704cbe2cafcd7cb020c
2010-09-10 01:34:00 -07:00
Cédric VINCENT
7eb372bec3 Bug 594296 - Fix the implementation of Assembler::asm_cmov() in the SH4 backend (r=nnethercote r=rreitmai sr=edwsmith)
--HG--
extra : convert_revision : 616a6130e06155aead8751eba04981e3760999c8
2010-09-08 01:50:00 -07:00
Nicholas Nethercote
9cf6db33a1 Bug 609121 - nanojit: handle small immediates specially in CseFilter. r=wmaddox.
--HG--
extra : convert_revision : 04d7771f3f85877cf12395ffecfc4f2f6d4a0b50
2010-11-10 14:40:07 -08:00
Ginn Chen
e033f58482 Bug 605428 Implement NJ_EXPANDED_LOADSTORE for SPARC r=wmaddox
--HG--
extra : convert_revision : e3715e4e883cc90ab92d02e688ee22d9c365ffb5
2010-11-05 16:25:14 +08:00
Rick Reitmaier
fab45d40d1 Bug 601724 - nanojit: Reduce indirect call overhead caused by CodeAlloc.alloc (r+wmaddox,nnethercote)
Part I re-work addMem() with no functional changes.

--HG--
extra : convert_revision : 480ca3961ba156b7654f1cf361963e9532717684
2010-11-04 15:41:24 -07:00
Rick Reitmaier
146df9729a Remove dead code introduced with nop insertion checkin
--HG--
extra : convert_revision : 41e11d89f9d92656e1924ab600651dcd381b8655
2010-11-04 12:39:12 -07:00
Edwin Smith
7a56c25bf8 CodeAlloc comment updates
.
. attachment 483153 - Clarify block and chunk terminology and roles of CodeList and CodeAlloc
.

--HG--
extra : convert_revision : 3b0fb708c5c9e12f20897d6d7de8ff79ebc66d6d
2010-10-14 07:10:00 -07:00
Rick Reitmaier
b8b2a58c9f Bug 587727 - nanojit: Reduce paging traffic from calls to CodeAlloc.markExec (r+nnethercote,edwsmith)
Second patch in the series which is explained in
https://bugzilla.mozilla.org/show_bug.cgi?id=587727#c14

--HG--
extra : convert_revision : aac6fffb12645c20a91f8151fb74778de75e3da2
2010-11-03 18:09:05 -07:00
Nicholas Nethercote
d09fc9b6b7 Bug 609129 - TM: fix emitIf(), re-enable implicit guard optimization (NJ-specific part). r=dvander.
--HG--
extra : convert_revision : f348fd5b02118c7151d991f51d76abe69976952e
2010-11-03 15:04:51 -07:00
Werner Sharp (wsharp@adobe.com)
0be07ddc2a bug 601135. switch x86/x64 to use cvttsd2di. add documentation (+r nick)
--HG--
extra : convert_revision : 6e1ed02c675eafc3195d67439854ba1a7b4f7c13
2010-11-03 16:30:00 -04:00
Rick Reitmaier
3e780fbc0a Poor winmo neglect killed the build
--HG--
extra : convert_revision : eb5465db2a02a3706d11f8fc1e35bb99cc7a1d04
2010-10-28 18:12:54 -07:00
Nicholas Nethercote
3bae3314c9 Bug 607856 - long hang loading page. r=dvander.
--HG--
extra : convert_revision : 18279f425cd8e3f63f7a13cd1b1b62cba57b7ecd
2010-11-02 16:16:40 -07:00
Edwin Smith
4fa79000db Bug 602387 - nanojit: make Register a non-numeric type on PPC (r=nnethercote+)
This patch removes REGINC(), and adds several operator overloads to
make working with Register values more convenient without introducing
implicit downcasts to int.

--HG--
extra : convert_revision : 7bec0eb6482c99dbf3051377d032d2698a7784f9
2010-11-02 15:43:39 -04:00
Rick Reitmaier
72e5feb3c9 Whitespace cleanup and comment out unused parameter
--HG--
extra : convert_revision : eb6ff4c45ba4edebad7f79fac7f13504f4140482
2010-11-01 16:20:22 -07:00
Rick Reitmaier
c348a161dc Bug 595034 - nanojit: harden via random no-op instruction insertion (r+nnethercote,wmaddox,edwsmith)
Insert no-op instructions when JIT'ing with the intention of making exploitable
patterns within the generated code less predicable.

--HG--
extra : convert_revision : d3116f2abd879b0b79a6cfb2f7817e36645cf915
2010-11-01 14:02:18 -07:00
Nicholas Nethercote
e5312a6b54 Bug 607225 - nanojit: add MODRM() and SIB() to Nativei386.cpp, plus other clean-ups. r=rreitmai.
--HG--
extra : convert_revision : 5012f8eb917c654d4756025fd90f1f98a1f07626
2010-10-28 15:22:05 -07:00
Ginn Chen
6d2e0fc102 Bug 605427 Implement FpReg move on icc or fcc for asm_cmov() on SPARC r=wmaddox
--HG--
extra : convert_revision : ce344dfb7fcb8d6f8fea281074cac9c472cc9d0c
2010-10-29 05:51:39 +08:00
Ginn Chen
ee7eccd45b Bug 604334 add support for param number above 6 (many_params.in) for SPARC r=wmaddox
--HG--
extra : convert_revision : 5a600b5166ea320289291a5b8bf085d4e5dc8653
2010-10-29 05:49:05 +08:00
Ginn Chen
18b2762a54 Bug 603876 Add support for addjovi and subjovi on Sparc platform r=wmaddox
--HG--
extra : convert_revision : d372626d5b878cc31facbf9e58a5ab66e7af6a34
2010-10-29 05:46:22 +08:00
Werner Sharp (wsharp@adobe.com)
49253f7a60 bug 607630. SoftFloatFilter needs to support LIR_d2i (sr+ nnethercote)
--HG--
extra : convert_revision : f43789d6bdbd848b943f3aac937b545e0872beb9
2010-10-28 12:47:12 -04:00
Nicholas Nethercote
bcf5f8be52 Bug 575850 - nanojit: generated better code for LIR_eqd on i386.
--HG--
extra : convert_revision : 8cb17c62aaa615416ac901106292b69f691c51cf
2010-10-27 21:03:29 -07:00
Nicholas Nethercote
d224dbf553 Bug 607555 - TM: fix interleaving of bytecode and LIR with TMFLAGS=recorder. r=edwsmith.
--HG--
extra : convert_revision : 53c69eca7d94694ff55d59d39c0d8a26f8d8c111
2010-10-27 15:49:04 -07:00
Nicholas Nethercote
1c2d701a4f Bug 607244 - nanojit: add LIR_comment. r=edwsmith.
--HG--
extra : convert_revision : 50bb48a9d8ce1c6bca6163d73abcddea8f6c5afc
2010-10-26 16:45:19 -07:00
Rick Reitmaier
11a11094eb Bug 602386 - nanojit: fix winmo build breakage (r+Jacob.Bramley)
winmo is puking on R0,D7 usage in First/LastRegNum.

--HG--
extra : convert_revision : ec207b83f9d831024e8942e4c46a2a31e6803522
2010-10-26 11:41:05 -07:00
Werner Sharp (wsharp@adobe.com)
350ec14772 bug 570476. Support integer division on x86/x64. (r=wmaddox)
--HG--
extra : convert_revision : 064dc57a57630e1bc2ab256308cb373e3049fb0c
2010-10-26 09:09:00 -04:00
Tero Koskinen
3e1a9e035e Add support for ARM's 'hard' EABI variant. (FP arguments go in VFP registers.) [Bug 602834] [r=jbramley,rreitmai]
--HG--
extra : convert_revision : 113a2e56c62fca5adc557906dd729a4ec632d994
2010-10-25 09:51:59 +01:00
Nicholas Nethercote
10003a285a Fix typo that leads to assertion failure. No bug, r=me.
--HG--
extra : convert_revision : a52df753119f0b9c3b6b9a3e6b8efc664b164dec
2010-10-24 20:42:58 -07:00
Nicholas Nethercote
9b191da1f1 Bug 606066 - nanojit: some i386 backend clean-ups. r=rreitmai.
--HG--
extra : convert_revision : 08f542f7fe1e16f1ec230af5d688527aa6feaece
2010-10-24 19:30:45 -07:00
Werner Sharp (wsharp@adobe.com)
d3bc7cd335 bug 409216. Add 8 byte alignment for MSVC. (r+ edwsmith, gal)
--HG--
extra : convert_revision : 15146f891b3a5cd9755b99f3b51b2acf8a692947
2010-10-22 13:20:41 -07:00
Werner Sharp
cffbf2e861 Bug 565571 - nanojit: improve X64 codegen for stores of integer immediates. r=nnethercote,edwsmith.
--HG--
extra : convert_revision : e60ea6ffca839808b062deb8ffbe6f1de79b8797
2010-10-21 20:45:34 -07:00
Nicholas Nethercote
8d7461d9c7 Bug 600127 - nanojit: do implicit constant propagation after guards (2nd attempt). r=edwsmith.
--HG--
extra : convert_revision : 7ed1632ff30779fbdffe24c34e7fe4003ac9fd99
2010-10-20 22:16:03 -07:00
Ginn Chen
7c806e326e Bug 603560 SPARC: remove inline keyword for JMP() to fix bustage of tracemonkey
--HG--
extra : convert_revision : 7abdd4e5c5dfe38521700c126b77660d41c39432
2010-10-20 20:09:15 +08:00
Ginn Chen
11eb209798 Bug 602388 make Register a non-numeric type on SPARC r=nnethercote
--HG--
extra : convert_revision : 8f528c838daeaa4351d30af3e1436be79f89025b
2010-10-20 13:32:16 +08:00
Nicholas Nethercote
0ee247937a Bug 602788 - nanojit: more constant folding of quads in ExprFilter, please. r=stejohns.
--HG--
extra : convert_revision : 8409c49a72dc223ca0622bc18b396e81f8d45608
2010-10-18 23:20:16 -07:00
Nicholas Nethercote
3350cbfdc2 Bug 602765 - nanojit: in Nativei386.cpp, generate d[b + i<<s] addressing modes in asm_load64() and asm_store64(). r=rreitmai.
--HG--
extra : convert_revision : 85b3484747acd7222efded3dea41267a21928d4e
2010-10-18 18:39:47 -07:00
Ginn Chen
a2f1826354 Bug 604335 Do not use asm_nongp_copy for moving between FpRegs and GpRegs on SPARC r=edwsmith
--HG--
extra : convert_revision : 004571303a080d8915b9845190b33338e495bcba
2010-10-18 19:47:12 +08:00
Ginn Chen
e280d4b539 Bug 603560 Workaround for Solaris Studio compiler, it failed to compile static const int x = { 1 }; r=edwsmith,nnethercote
--HG--
extra : convert_revision : c4f9bb1b1fd4816604d86045806423025f8e6e4e
2010-10-18 19:46:04 +08:00
Rick Reitmaier
23b0e1f23d Fix build breakage - missing portion of patch in prior checkin.
--HG--
extra : convert_revision : 2cb7d0c94e4b64bbe5d40dcd9d8a8d0f03fb9a5b
2010-10-14 19:01:15 -07:00
Rick Reitmaier
61ef5b743e Bug 595033 - nanojit: harden via random function alignment (wmaddox,nnethercote,edwsmith)
Introduce a random number of 'int3' instructions inbetween JIT'd methods.

NOTE: this feature is currently disabled

--HG--
extra : convert_revision : d75d0a918f8e048b92127188f47f4e1efcee9004
2010-10-14 18:54:07 -07:00