- 09 Dec, 2015 1 commit
-
-
jochen authored
Embedders still can use those APIs by default test-api.cc still has an exception to use the old APIs... BUG=v8:4143 R=vogelheim@chromium.org LOG=n Review URL: https://codereview.chromium.org/1505803004 Cr-Commit-Position: refs/heads/master@{#32701}
-
- 25 Nov, 2015 1 commit
-
-
jochen authored
We always want to have an Isolate, so just use an extra ctor arg BUG=2487 R=yangguo@chromium.org,mstarzinger@chromium.org LOG=n Review URL: https://codereview.chromium.org/1476763002 Cr-Commit-Position: refs/heads/master@{#32277}
-
- 16 Nov, 2015 1 commit
-
-
jochen authored
BUG=4134 R=epertoso@chromium.org LOG=n Review URL: https://codereview.chromium.org/1451733002 Cr-Commit-Position: refs/heads/master@{#32011}
-
- 02 Oct, 2015 3 commits
-
-
danno authored
Previous to this patch, both the lithium and TurboFan register allocators tracked allocated registers by "indices", rather than the register codes used elsewhere in the runtime. This patch ensures that codes are used everywhere, and in the process cleans up a bunch of redundant code and adds more structure to how the set of allocatable registers is defined. Some highlights of changes: * TurboFan's RegisterConfiguration class moved to V8's top level so that it can be shared with Crankshaft. * Various "ToAllocationIndex" and related methods removed. * Code that can be easily shared between Register classes on different platforms is now shared. * The list of allocatable registers on each platform is declared as a list rather than implicitly via the register index <-> code mapping. Committed: https://crrev.com/80bc6f6e11f79524e3f1ad05579583adfd5f18b2 Cr-Commit-Position: refs/heads/master@{#30913} Committed: https://crrev.com/7b7a8205d9a00c678fb7a6e032a55fecbc1509cf Cr-Commit-Position: refs/heads/master@{#31075} Review URL: https://codereview.chromium.org/1287383003 Cr-Commit-Position: refs/heads/master@{#31087}
-
danno authored
Revert of Reland: Remove register index/code indirection (patchset #20 id:380001 of https://codereview.chromium.org/1287383003/ ) Reason for revert: Failures on MIPS Original issue's description: > Remove register index/code indirection > > Previous to this patch, both the lithium and TurboFan register > allocators tracked allocated registers by "indices", rather than > the register codes used elsewhere in the runtime. This patch > ensures that codes are used everywhere, and in the process cleans > up a bunch of redundant code and adds more structure to how the > set of allocatable registers is defined. > > Some highlights of changes: > > * TurboFan's RegisterConfiguration class moved to V8's top level > so that it can be shared with Crankshaft. > * Various "ToAllocationIndex" and related methods removed. > * Code that can be easily shared between Register classes on > different platforms is now shared. > * The list of allocatable registers on each platform is declared > as a list rather than implicitly via the register index <-> > code mapping. > > Committed: https://crrev.com/80bc6f6e11f79524e3f1ad05579583adfd5f18b2 > Cr-Commit-Position: refs/heads/master@{#30913} > > Committed: https://crrev.com/7b7a8205d9a00c678fb7a6e032a55fecbc1509cf > Cr-Commit-Position: refs/heads/master@{#31075} TBR=akos.palfi@imgtec.com,bmeurer@chromium.org,jarin@chromium.org,paul.lind@imgtec.com,titzer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1380863004 Cr-Commit-Position: refs/heads/master@{#31083}
-
danno authored
Previous to this patch, both the lithium and TurboFan register allocators tracked allocated registers by "indices", rather than the register codes used elsewhere in the runtime. This patch ensures that codes are used everywhere, and in the process cleans up a bunch of redundant code and adds more structure to how the set of allocatable registers is defined. Some highlights of changes: * TurboFan's RegisterConfiguration class moved to V8's top level so that it can be shared with Crankshaft. * Various "ToAllocationIndex" and related methods removed. * Code that can be easily shared between Register classes on different platforms is now shared. * The list of allocatable registers on each platform is declared as a list rather than implicitly via the register index <-> code mapping. Committed: https://crrev.com/80bc6f6e11f79524e3f1ad05579583adfd5f18b2 Cr-Commit-Position: refs/heads/master@{#30913} Review URL: https://codereview.chromium.org/1287383003 Cr-Commit-Position: refs/heads/master@{#31075}
-
- 28 Sep, 2015 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1365803004 Cr-Commit-Position: refs/heads/master@{#30963}
-
- 24 Sep, 2015 2 commits
-
-
danno authored
Revert of Remove register index/code indirection (patchset #17 id:320001 of https://codereview.chromium.org/1287383003/ ) Reason for revert: Failures on greedy RegAlloc, Fuzzer Original issue's description: > Remove register index/code indirection > > Previous to this patch, both the lithium and TurboFan register > allocators tracked allocated registers by "indices", rather than > the register codes used elsewhere in the runtime. This patch > ensures that codes are used everywhere, and in the process cleans > up a bunch of redundant code and adds more structure to how the > set of allocatable registers is defined. > > Some highlights of changes: > > * TurboFan's RegisterConfiguration class moved to V8's top level > so that it can be shared with Crankshaft. > * Various "ToAllocationIndex" and related methods removed. > * Code that can be easily shared between Register classes on > different platforms is now shared. > * The list of allocatable registers on each platform is declared > as a list rather than implicitly via the register index <-> > code mapping. > > Committed: https://crrev.com/80bc6f6e11f79524e3f1ad05579583adfd5f18b2 > Cr-Commit-Position: refs/heads/master@{#30913} TBR=akos.palfi@imgtec.com,bmeurer@chromium.org,jarin@chromium.org,paul.lind@imgtec.com,titzer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1365073002 Cr-Commit-Position: refs/heads/master@{#30914}
-
danno authored
Previous to this patch, both the lithium and TurboFan register allocators tracked allocated registers by "indices", rather than the register codes used elsewhere in the runtime. This patch ensures that codes are used everywhere, and in the process cleans up a bunch of redundant code and adds more structure to how the set of allocatable registers is defined. Some highlights of changes: * TurboFan's RegisterConfiguration class moved to V8's top level so that it can be shared with Crankshaft. * Various "ToAllocationIndex" and related methods removed. * Code that can be easily shared between Register classes on different platforms is now shared. * The list of allocatable registers on each platform is declared as a list rather than implicitly via the register index <-> code mapping. Review URL: https://codereview.chromium.org/1287383003 Cr-Commit-Position: refs/heads/master@{#30913}
-
- 30 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
Also split v8-core independent methods from checks.h to base/logging.h and merge v8checks with the rest of checks. The CPU::FlushICache method is moved to CpuFeatures::FlushICache RoundUp and related methods are moved to base/macros.h Remove all layering violations from src/libplatform BUG=none R=jkummerow@chromium.org LOG=n Review URL: https://codereview.chromium.org/358363002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
- this avoids using relative include paths which are forbidden by the style guide - makes the code more readable since it's clear which header is meant - allows for starting to use checkdeps BUG=none R=jkummerow@chromium.org, danno@chromium.org LOG=n Review URL: https://codereview.chromium.org/304153016 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Apr, 2014 2 commits
-
-
svenpanne@chromium.org authored
This CL mechanically removes all useless Isolate* parameters from code stub functions, making things quite a bit simpler. BUG=359977 LOG=y R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/255543003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This is a purely mechanical change, adding an Isolate* to the CodeStub constructor and a corresponding field plus a getter. A few methods in CodeStub and its subclasses can be simplified now, but this is done in a separate CL. The underlying reason apart from simplicity is that deep down in the call chain we need to detect if the serializer is active or not. This information will be part of the Isolate, not a global variable with funky synchronization primitives around it (which is fundamentally wrong and the underlying cause for race conditions and a catch-22 during initialization). BUG=359977 LOG=y R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/246643014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Nov, 2013 1 commit
-
-
bmeurer@chromium.org authored
This also removes the fixed register hack that was required to support RecordWriteStub in the snapshot. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/96853003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18167 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Nov, 2013 1 commit
-
-
yangguo@chromium.org authored
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/50863002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Sep, 2013 2 commits
-
-
mstarzinger@chromium.org authored
Original descriptions were: - "Refactor and cleanup VirtualMemory." - "Fix typo." - "Deuglify V8_INLINE and V8_NOINLINE." - "Don't align size on allocation granularity for unaligned ReserveRegion calls." Reasons for the revert are: - Our mjsunit test suite slower by a factor of 5(!) in release mode. - Flaky cctest/test-alloc/CodeRange on all architectures and platforms. - Tankage of Sunspider by about 6% overall (unverified). TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/23970004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16662 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
Remove a lot of platform duplication, and simplify the virtual memory implementation. Also improve readability by avoiding bool parameters for executability (use a dedicated Executability type instead). Get rid of the Isolate::UncheckedCurrent() call in the platform code, as part of the Isolate TLS cleanup. Use a dedicated random number generator for the address randomization, instead of messing with the per-isolate random number generators. TEST=cctest/test-virtual-memory R=verwaest@chromium.org Review URL: https://codereview.chromium.org/23641009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Aug, 2013 1 commit
-
-
danno@chromium.org authored
Also change test-code-stubs-ia32 to use the same style as x64. BUG= R=danno@chromium.org Review URL: https://codereview.chromium.org/22865006 Patch from Ross McIlroy <mcilroy@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Aug, 2013 1 commit
-
-
loislo@chromium.org authored
I'd like to propagate bailout reason to cpu profiler. So I need to save it into heap object SharedFunctionInfo. But: 1) all bailout reason strings spread across all the sources. 2) they are native strings and if I convert them into String then I may have a performance issue. 3) one byte is enough for 184 bailout reasons. Otherwise we need 8 bytes for the pointer. Also I think it would be nice to have error strings collected in one place. In that case we will get additional benefits: It allows us to keep this set of messages under control. It gives us a chance to internationalize them. It slightly reduces the binary footprint. From the other hand the developers have to add new strings into that enum. BUG= R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/20843012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Jul, 2013 1 commit
-
-
danno@chromium.org authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/18333012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Jul, 2013 2 commits
-
-
danno@chromium.org authored
R=ulan@chromium.org Review URL: https://codereview.chromium.org/18915009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15648 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
- Added a general DoubleToIStub so that it's possible to extend to other platforms and non-truncating case. - This version handles all cases of truncation (previous code deopted in some cases) and all source/destination register combinations without clobbering any temps. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/18612005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-