- 30 Apr, 2015 1 commit
-
-
Djordje.Pesic authored
Added rounding according to fcsr, CVT_W_D and RINT.D instruction in assembler, dissasembler and simulator and wrote appropiate tests. BUG= Review URL: https://codereview.chromium.org/1108583003 Cr-Commit-Position: refs/heads/master@{#28143}
-
- 06 Apr, 2015 1 commit
-
-
dusan.milosavljevic authored
- Fixed single float register type instruction en[de]coding in assembler and disassembler. - Added max and min instructions for r6 and corresponding tests. - Fixed selection instruction for boundary cases in simulator. - Update assembler tests to be more thorough wrt boundary cases. TEST=cctest/test-assembler-mips64/MIPS17, MIPS18 cctest/test-disasm-mips64/Type1 cctest/test-assembler-mips/MIPS16, MIPS17 cctest/test-disasm-mips/Type1 BUG= Review URL: https://codereview.chromium.org/1057323002 Cr-Commit-Position: refs/heads/master@{#27601}
-
- 31 Mar, 2015 1 commit
-
-
akos.palfi authored
Port 8dad78cd Original commit message: This adds the basics necessary to support float32 operations in TurboFan. The actual functionality required to detect safe float32 operations will be added based on this later. Therefore this does not affect production code except for some cleanup/refactoring. In detail, this patchset contains the following features: - Add support for float32 operations to arm, arm64, ia32 and x64 backends. - Add float32 machine operators. - Add support for float32 constants to simplified lowering. - Handle float32 representation for phis in simplified lowering. In addition, contains the following (related) cleanups: - Fix/unify naming of backend instructions. - Use AVX comparisons when available. - Extend ArchOpcodeField to 9 bits (required for arm64). - Refactor some code duplication in instruction selectors. BUG= Review URL: https://codereview.chromium.org/1045203003 Cr-Commit-Position: refs/heads/master@{#27534}
-
- 30 Mar, 2015 1 commit
-
-
dusan.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1046873004 Cr-Commit-Position: refs/heads/master@{#27530}
-
- 31 Oct, 2014 1 commit
-
-
dusan.milosavljevic@imgtec.com authored
Removed workaround for this issue. TEST=mjsunit, cctest on sim64 BUG= R=paul.lind@imgtec.com Review URL: https://codereview.chromium.org/695933002 Cr-Commit-Position: refs/heads/master@{#25043} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Sep, 2014 1 commit
-
-
dusan.milosavljevic@imgtec.com authored
This resolves calculation errors for trigonometric functions. TEST=test262/S15.8.2.7_A6.js BUG= R=jkummerow@chromium.org, paul.lind@imgtec.com Review URL: https://codereview.chromium.org/558163006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jul, 2014 1 commit
-
-
dusan.milosavljevic@rt-rk.com authored
Summary: - Changes in common code are mainly boilerplate changes, gyp and test status files updates. - On mips64 simulator all tests pass from all test units. - Current issues: mjsunit JS debugger tests fail randomly on HW in release mode. Corresponding tests are skipped on HW. - Skipped tests on mips64: test-heap/ReleaseOverReservedPages, mjsunit/debug-* TEST= BUG= R=danno@chromium.org, plind44@gmail.com, ulan@chromium.org Review URL: https://codereview.chromium.org/371923006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Jun, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/333013002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 2 commits
-
-
ishell@chromium.org authored
Fixed lint errors caused by "runtime/references" rule (Is this a non-const reference?) and the rule itself is restored. BUG=v8:3326 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/314723002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21651 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
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
-
- 20 May, 2014 1 commit
-
-
ishell@chromium.org authored
BUG=chromium:369962 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/282783004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21382 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/259183002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Feb, 2014 1 commit
-
-
ulan@chromium.org authored
BUG=v8:3113 LOG=Y R=jochen@chromium.org, rmcilroy@chromium.org, rodolph.perfetta@arm.com Review URL: https://codereview.chromium.org/148293020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Nov, 2013 1 commit
-
-
palfia@homejinni.com authored
This commit fixes a lot of test failures that we saw earlier in the buildbots (http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20mips%20-%20sim/builds/3034/steps/Check/logs/stdio). In some very rare cases the code age stub address can be 0xXXXX0000 and in this case the li maco instruction emits only 1 instruction (instead of the expected 2). Thus the code age sequence will be 6 instructions long instead of 7, which breaks the code aging feature. This change makes sure that li always emits 2 instructions and it also simplifies the code aging sequence. Also fixes a small mistake in the simulator at the jalr instruction. BUG= R=gergely@homejinni.com Review URL: https://codereview.chromium.org/83583003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Jun, 2013 1 commit
-
-
plind44@gmail.com authored
BUG=v8:2628 TEST=cctest/test-cpu-profiler/SampleWhenFrameIsNotSetup R=jkummerow@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/17265004 Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Apr, 2013 1 commit
-
-
plind44@gmail.com authored
Port r14230 (76c22097) Original commit message: Native method invocation from the arm/simulator-arm.cc previously made non-portable assumptions about calling conventions. This was okay for 32-bit stack-based machines, where by-value structs are automatically materialized on the stack, and where both int and double parameters could be passed on the stack. However they are not okay for x86-64, which has an elaborate scheme for passing parameters in registers. This CL replaces the previous non-portable code paths with portable code, using call-sites that accurately match the prototype of the callee. BUG= Review URL: https://codereview.chromium.org/13989008 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14239 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Apr, 2013 1 commit
-
-
ulan@chromium.org authored
BUG=none Review URL: https://chromiumcodereview.appspot.com/13469002 Patch from Hans Wennborg <hans@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Nov, 2012 1 commit
-
-
jkummerow@chromium.org authored
Port r13054 (636985d7) BUG= TEST= Review URL: https://codereview.chromium.org/11415192 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 May, 2012 1 commit
-
-
yangguo@chromium.org authored
Port r11623 (f153116d) BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10436012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Mar, 2012 1 commit
-
-
danno@chromium.org authored
List of changes: -added a minor optimization to the Simulator that quickly skips nops in the delay slot -slightly re-worked CEntryStub to save a few instructions CEntryStub now expects the following values: -s0: number of arguments including receiver -s1: size of arguments excluding receiver -s2: pointer to builtin function Two new MacroAssembler functions were added to make usage more convenient: -PrepareCEntryArgs(int num_args) to set up s0 and s1 -PrepareCEntryFunction(const ExternalReference&) to set up s2 -removed branch delay slot nops from the most frequently used code areas -reorganized some code to execute fewer instructions -utilized the delay slot of most Ret instructions This does not cover all Rets, only the most obvious cases. Also added a special version of DropAndRet that utilizes the delay slot. -added some comments to code areas where explanation of the register/delay slot usage may be needed -added an optimization to Jump so it doesn't always pre-load the target register BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9699071 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Nov, 2011 1 commit
-
-
yangguo@chromium.org authored
Port r9937 (c263a9e). BUG= TEST= Review URL: http://codereview.chromium.org/8509015 Patch from Gergely Kis <gergely@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 May, 2011 1 commit
-
-
sgjesse@chromium.org authored
The already working watchpoint break mechanism has been extended to handle "stop" instructions, with text messages. Explanation (also in constants-mips.h): On MIPS Simulator breakpoints can have different codes: - Breaks between 0 and kMaxWatchpointCode are treated as simple watchpoints, the simulator will run through them and print the registers. - Breaks between kMaxWatchpointCode and kMaxStopCode are treated as stop() instructions (see Assembler::stop()). - Breaks larger than kMaxStopCode are simple breaks, dropping you into the debugger. The current values are 31 for kMaxWatchpointCode and 127 for kMaxStopCode. From the user's point of view this works the same way as the ARM stop instruction except for the break code usage detailed above. Ported commits: r5723 (3ba78d24) BUG= TEST= Review URL: http://codereview.chromium.org//7062014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 May, 2011 1 commit
-
-
sgjesse@chromium.org authored
Make mips-specifc changes for r7999, r8001, r8002. Also bring in changes for older commits 7203, 7279, 7693, 7715, 7788. Mips changes for 7715 (Arm: Support hardfloat in SCons build), and 7693 (Implement hardfloat calling convention in macro assembler and simulator) resulted in changes to SConstruct. BUG= TEST= Review URL: http://codereview.chromium.org//6966031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 May, 2011 1 commit
-
-
sgjesse@chromium.org authored
Updated to include fixes to several mips arch-specific files, corresponding to recent changes in r7944, r7935, r7926, r7914, r7910, r7895, and parts of r7423, which had previously been missed for mips. Rebased on r7964. The simulator changes were missed on r7893 for code-stubs-mips, where the DirectCEntry stuff was added. There are also a couple small changes to builtins-mips following r7879 for the other architectures. BUG= TEST= Review URL: http://codereview.chromium.org//7042031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 May, 2011 1 commit
-
-
sgjesse@chromium.org authored
- Merge to current tip of tree, fix build problems. - Remove deprecated source files. - Add cctest test-disasm-mips - Consistently use single-reg push()/pop() (remove uppercase variants) - Add assembler field accessors. - More style fixes. BUG= TEST= Review URL: http://codereview.chromium.org//6965006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 May, 2011 1 commit
-
-
dslomov@chromium.org authored
BUG= TEST= Committed: http://code.google.com/p/v8/source/detail?r=7734 Committed: http://code.google.com/p/v8/source/detail?r=7784 Review URL: http://codereview.chromium.org/6788023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7797 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Mar, 2011 1 commit
-
-
sgjesse@chromium.org authored
This commit adds current working versions of assembler, macro-assembler, disassembler, and simulator. All other mips arch files are replaced with stubbed-out versions that will build. Arch independent files are updated as needed to support building and running mips. The only test is cctest/test-assembler-mips, and this passes on the simulator and on mips hardware. TEST=none BUG=none Patch by Paul Lind from MIPS. Review URL: http://codereview.chromium.org/6730029/ git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7388 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Oct, 2010 1 commit
-
-
sgjesse@chromium.org authored
Added USE_SIMULATOR macro that explicitly indicates that we wish to use the simulator as the execution engine. For example, this allows us to run with the ARM simulator on ARM. Patch by Mark Lam <mark.lam@palm.com> from Hewlett-Packard Development Company, LP Review URL: http://codereview.chromium.org/3825001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Feb, 2010 1 commit
-
-
sgjesse@chromium.org authored
This is the first step in the MIPS port of V8. It adds assembler, disassembler and simulator for the MIPS32 architecture. Contains stubbed out implementation of all the compiler/code generator infrastructure to make it all build. Patch by Alexandre Rames from Sigma Designs Inc. This is the landing of http://codereview.chromium.org/543161. Review URL: http://codereview.chromium.org/561072 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Jan, 2010 1 commit
-
-
sgjesse@chromium.org authored
As the start index is already passed it is easy to calculate the "at start" boolean in generated code. Also as direct entry has been implemented this needs to be done in generated code anyway, and therefore might as well be moved to the generated code for RegExp. The "at start" value is now calcualted as a local variable on the native RegExp frame based on the value of the start index argument. The x64 version have been tested on both Linux and 64-bit Windows Vista. For ARM I have tested cctest/test-regexp on ARM hardware, but the rest of the tests have only been run on the ARM simulator. Review URL: http://codereview.chromium.org/554078 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3709 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Jan, 2010 1 commit
-
-
sgjesse@chromium.org authored
Calls to RegExp no longer have to be via a call to the runtime system. A new stub have been added which can handle this call in generated code. The stub checks all the parameters and creates RegExp entry frame in the same way as it is created by the runtime system. Bailout to the runtime system is done whenever an uncommon situation is encountered or when the static data used is not initialized. After running the native RegExp code the last match info is updated like in the runtime system. Currently only ASCII strings are handled. Added another argument to the RegExp entry frame. It indicated whether the call is direct from JavaScript code or through the runtime system. This information is used when RegExp execution is interrupted. If an interruption happens when RegExp code is called directly a retry is issued causing the interruption to be handled via the runtime system. The reason for this is that the direct call to RegExp code does not support garbage collection. Review URL: http://codereview.chromium.org/521028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Nov, 2009 2 commits
-
-
erik.corry@gmail.com authored
Also move a function into the macro assembler. Fix some *& placement errors that had accumulated. Review URL: http://codereview.chromium.org/385069 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/348019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Nov, 2009 1 commit
-
-
ager@chromium.org authored
separate JS stack. In exception handling, we need to be able to compare addresses into the JavaScript portion of the stack with the address of a C++ handler on the stack. Since the stacks are separate on the simulator, we need a JavaScript stack address corresponding to a C++ try catch handler in order to perform valid address comparisons. On the simulator, we now link the C++ try catch handlers indirectly through the JS stack and use the JS stack indirection address for comparisons. JS C++ handler [C++ address] <------ next_ \ \ \----> handler [C++ address] <------ next_ On actual hardware the C++ try catch handlers continue to be directly linked. BUG=http://code.google.com/p/v8/issues/detail?id=271 Review URL: http://codereview.chromium.org/360004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Oct, 2009 1 commit
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/242074 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 31 Aug, 2009 1 commit
-
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/173567 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jun, 2009 1 commit
-
-
erik.corry@gmail.com authored
instructions. The intention is that the snapshots generated by the simulator should be usable on the hardware. Instead of swi instructions we generate a branch to a swi instruction that is not part of the snapshot. The call/jump is patched up in the same way as other external references when the snapshot is deserialized. This only works for EABI targets: on old ABI targets we still emit some instructions not supported by the simulator (fp coprocessor instructions). Review URL: http://codereview.chromium.org/119036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 May, 2009 1 commit
-
-
mikhail.naganov@gmail.com authored
This issue was raised by Brett Wilson while reviewing my changelist for readability. Craig Silverstein (one of C++ SG maintainers) confirmed that we should declare one namespace per line. Our way of namespaces closing seems not violating style guides (there is no clear agreement on it), so I left it intact. Review URL: http://codereview.chromium.org/115756 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 May, 2009 1 commit
-
-
deanm@chromium.org authored
- Fix some typos / guards that didn't match the filename. - Fix some style inconsistencies. - Add guards to files that were missing them. - Add the directory name to the guard. Review URL: http://codereview.chromium.org/99343 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Apr, 2009 1 commit
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/99051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-