- 05 Mar, 2013 1 commit
-
-
svenpanne@chromium.org authored
First of all, it has nothing to do with Isolates, it is related to the assembler at hand. Furthermore, the saving/restoring is platform-independent. Cleaned up some platform-specific stuff on the way. Note that there are some things which still need some cleanup, like e.g. using EnumSet instead of uint64_t, making Probe() more uniform across platforms etc., but the CL is already big enough. BUG=v8:2487 Review URL: https://codereview.chromium.org/12391055 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jan, 2013 1 commit
-
-
ulan@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/11428137 Patch from Hans Wennborg <hans@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13484 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jan, 2013 1 commit
-
-
yangguo@chromium.org authored
Based on commit r12958 (04586adf). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/11783049 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13342 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Jan, 2013 2 commits
-
-
yangguo@chromium.org authored
R=mstarzinger@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/11644097 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13326 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Port r13236 (cd9236c5) BUG= TEST= Review URL: https://codereview.chromium.org/11801002 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Jan, 2013 1 commit
-
-
ulan@chromium.org authored
This CL only does renaming, nothing else. Followup to: https://chromiumcodereview.appspot.com/11695006/ There are now NONE and NONE64 RelocInfo types, but only ARM uses them both at the same time. They were added in: https://chromiumcodereview.appspot.com/11191029/ R= ulan@chromium.org Review URL: https://chromiumcodereview.appspot.com/11744020 Patch from JF Bastien <jfb@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jan, 2013 1 commit
-
-
ulan@chromium.org authored
There are now NONE and NONE64 RelocInfo types, but only ARM uses them both at the same time. They were added in: https://chromiumcodereview.appspot.com/11191029/ I'll rename NONE to NONE32 in a later CL. This CL cleans up the RelocInfo::NONE usage by: - Using RelocInfo::IsNone when testing for NONE-ness. - Using NONE on 32-bit platforms (MIPS and IA32), and NONE64 on 64-bit platforms (x64). This cleans up the code and prevents it from evolving bugs in the future because NONE32 and NONE64 are used in misleading ways. R= ulan@chromium.org Review URL: https://chromiumcodereview.appspot.com/11695006 Patch from JF Bastien <jfb@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Nov, 2012 1 commit
-
-
svenpanne@chromium.org authored
This removed a lot of copy-n-paste code and is very handy for some upcoming changes (regarding predictable code size). Review URL: https://codereview.chromium.org/11416133 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Nov, 2012 1 commit
-
-
svenpanne@chromium.org authored
Review URL: https://codereview.chromium.org/11312165 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Oct, 2012 1 commit
-
-
danno@chromium.org authored
We use marking bits in nops (in the 'sa' field) for debug markers, and for some IC stuff. A normal NOP in mips is sll(zero_reg, zero_reg, 0), where the 0 is a 5 bit immediate field in 'sa'. See enum NopMarkerTypes at around line 654 of assembler-mips.h The problem is that these markers use encodings that are reserved for the 'ssnop' and 'ehb' instructions. These are instructions used for hazard barriers. It does not break anything, but it will slow things down a little bit as some pipeline stages are cleared, etc. This commit changes the "marked" NOPs to sll(zero_reg, at, type) instructions, which is also a NOP operation on MIPS. BUG= TEST= Review URL: https://codereview.chromium.org/10990110 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Aug, 2012 1 commit
-
-
svenpanne@chromium.org authored
This is a refactoring-only CL which improves the typing of IDs associated with AST nodes. The interesting parts are in utils.h and ast.h, the rest of the CL basically follows mechanically. Review URL: https://chromiumcodereview.appspot.com/10831172 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Apr, 2012 1 commit
-
-
erikcorry authored
MIPS: Do the qNaN fixup at de-serialization time. This is a commit of https://chromiumcodereview.appspot.com/10093007/ for Paul Lind git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Apr, 2012 1 commit
-
-
erik.corry@gmail.com authored
to the MIPS FPU even when cross-building the snapshot. This is based on code from Daniel Kalmar from http://codereview.chromium.org/9910029/ Review URL: https://chromiumcodereview.appspot.com/10068006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Apr, 2012 1 commit
-
-
danno@chromium.org authored
Port r11010 (1daa81bc). MIPS-specific changes: -register codes and registers are defined using a macro to avoid redundancy -renamed s8_fp to fp, removed the "fp" alias -removed kSavedValueRegister (found by check-static-initializers.sh) Original commit message: Landing for pliard@chromium.org: Remove static initializers in v8. This change includes two CLs by pliard@chromium.org: 1. http://codereview.chromium.org/9447052/ (Add CallOnce() and simple LazyInstance implementation): Note that this implementation of LazyInstance does not handle global destructors (i.e. the lazy instances a This CL was initially reviewed on codereview.appspot.com: http://codereview.appspot.com/5687064/ 2. http://codereview.chromium.org/9455088/ (Remove static initializers in v8): This CL depends on CL 9447052 (adding CallOnce and LazyInstance). It is based on a patch sent by Digit. With this patch applied, we have only one static initializer left (in atomicops_internals_x86_gcc.cc). This This CL also modifies the presubmit script to check the number of static initializers. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9689069 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Mar, 2012 1 commit
-
-
erik.corry@gmail.com authored
http://codereview.chromium.org/9372063 by Daniel Kalmar. Review URL: https://chromiumcodereview.appspot.com/9722020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Mar, 2012 1 commit
-
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9692048 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Feb, 2012 1 commit
-
-
danno@chromium.org authored
Some instructions can use >16 bit immediates if they represent a <=16 bit signed value. However some logical instructions (andi, xori, ori, lui) should always treat the immediate value as unsigned. This patch adds an ASSERT to these places and a minor change to MacroAssembler::li to satisfy this. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9309077 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10644 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Jan, 2012 1 commit
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/9139051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10399 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Oct, 2011 1 commit
-
-
danno@chromium.org authored
Simplified based on Michael's change Refactor how embedded pointers are visited. (9597) Ported r9328 (bdc13b7) BUG= TEST= Review URL: http://codereview.chromium.org/8106002 Patch from Paul Lind <pling44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Sep, 2011 1 commit
-
-
danno@chromium.org authored
Highlights: - assembler.h adds FPU definitions used for Crankshaft. - Support optimization of mips call: jalr->jal - includes changes to set_target_address_at(), support routines. - Add 2nd use of Apply() to update target addresses. - Minor debugging improvement in simulator. BUG= TEST= Review URL: http://codereview.chromium.org/7888003 Patch from Paul Lind <plind44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 31 Aug, 2011 1 commit
-
-
jkummerow@chromium.org authored
Another port of an older arm commit, which was not upstreamed at the time. Ported r7754 (ef678641) BUG= TEST= Review URL: http://codereview.chromium.org/7809016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Aug, 2011 1 commit
-
-
svenpanne@chromium.org authored
The ARM and MIPS assemblers had a bug where they did not handle the last element in the list of code positions correctly during the fixup of offsets for forward jumps. This happened when the first instruction contained a forward jump to a label, and that label was used in a forward jump later, too. Unified the code for Assembler::next on ARM and MIPS while we were there. Added test cases, even for ia32/x64, which seem to be correct, even I don't fully understand why... %-} BUG=v8:1644 Review URL: http://codereview.chromium.org/7786001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Jul, 2011 1 commit
-
-
svenpanne@chromium.org authored
Review URL: http://codereview.chromium.org/7400019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Jun, 2011 1 commit
-
-
sgjesse@chromium.org authored
Improve the branch and branch-trampoline mechanism to automatically use long-jumps when function size grows large. Reduce size of emitted trampoline pools. Now passes mozilla regress-80981.js. BUG= TEST= Review URL: http://codereview.chromium.org//7239020 Patch from Paul Lind <plind44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8433 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
-
- 17 May, 2011 1 commit
-
-
sgjesse@chromium.org authored
Following r7854. BUG= TEST= Review URL: http://codereview.chromium.org//7037004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7908 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
-
- 28 Mar, 2011 2 commits
-
-
sgjesse@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/6724034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
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
-
- 08 Jun, 2010 1 commit
-
-
sgjesse@chromium.org authored
Added support for more precise break points when debugging and stepping. To achieve that additional nop instructions are inserted where breaking would otherwise be impossible. The number of nop instructions inserted are sufficient to make place for patching with a call to a debug break code stub. On Intel that is 5 nop's for 32-bit and 13 for 64-bit. Om ARM 3 nop instructions (12 bytes) are required. In order to avoid inserting nop's in to many places a simple ast checker have been added to check whether there are breakable code in a statement or expression. If it is possible to break in an expression no additional break enabeling code is inserted. Added break locations to the true and false part of a conditional expression. Added stepping tests to cover more constructs. These changes are only in the full compiler. Changed the default value for the option --debugger in teh d8 shell from true to false. The reason for this is that with --debugger turned on the full compiler will be used for all code in when running d8, which can be unexpeceted. Review URL: http://codereview.chromium.org/2693002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 May, 2010 1 commit
-
-
mark@chromium.org authored
Chromium build. v8.gyp no longer sets any V8_TARGET_ARCH_* macro on the Mac. Instead, the proper V8_TARGET_ARCH_* macro will be set by src/globals.h in the same way as the V8_HOST_ARCH_* macro when it detects that no target macro is currently defined. The Mac build will attempt to compile all ia32 and x86_64 .cc files. #ifdef guards in each of these target-specific source files prevent their compilation when the associated target is not selected. For completeness, these #ifdef guards are also provided for the arm and mips .cc files. BUG=706 TEST=x86_64 Mac GYP/Xcode-based Chromium build (still depends on other changes) Review URL: http://codereview.chromium.org/2133003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4666 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
-