1. 17 May, 2011 1 commit
  2. 05 May, 2011 1 commit
  3. 25 Jan, 2011 1 commit
    • sgjesse@chromium.org's avatar
      Change ARM exit frame layout and alingment handling · 161d631b
      sgjesse@chromium.org authored
      Change the ARM exit frame to have the same layout as the IA32 exit frame. This basically re-arranges the order of fp and sp and changes the sp location of the entry frame to hold the sp used by the gc and not the sp for popping the arguments. This removes the option of tearing down the frame and returning using one ldm instruction.
      
      The main motivation for this is to avoid pushing an alignment word before generating the entry frame. The GC handling of optimized frames process the registers pushed as part of a safepoint and asumes that these are at the top of the frame, so if an alignment word is pushed this processing will be one off.
      
      The alignment handling in the C entry stub have also been simplified. Now the value of lr is stored to a stack slot already reserved avoiding pushing it and keeping track of "frame skew".
      
      This does result in more instructions in the exit frame on ARM, but we can look into improving this later.
      Review URL: http://codereview.chromium.org/6247019
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      161d631b
  4. 07 Dec, 2010 3 commits
  5. 16 Sep, 2010 1 commit
  6. 30 Aug, 2010 1 commit
  7. 27 Aug, 2010 1 commit
  8. 21 May, 2010 1 commit
  9. 17 May, 2010 1 commit
    • mark@chromium.org's avatar
      Allow build-time selection between ia32 and x86_64 in the GYP/Xcode Mac · e9b5d785
      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
      e9b5d785
  10. 09 Dec, 2009 1 commit
  11. 04 Nov, 2009 1 commit
  12. 29 Oct, 2009 1 commit
  13. 27 Oct, 2009 1 commit
  14. 26 Oct, 2009 2 commits
  15. 25 May, 2009 1 commit
  16. 23 Apr, 2009 1 commit
  17. 13 Apr, 2009 1 commit
  18. 25 Feb, 2009 1 commit
  19. 12 Sep, 2008 1 commit
    • iposva@chromium.org's avatar
      Adapt to new calling convention on ARM: · c5ee9618
      iposva@chromium.org authored
      - Simplified frame entry and frame exit code.
      - Added ArgumentsAdaptorTrampoline and check for matching argument counts in the InvokePrologue.
      - Removed definition and uses of USE_OLD_CALLING_CONVENTIONS.
      - Changed MacroAssembler::InvokeBuiltin to match ia32 version.
      - Start introducing convenience instructions in the ARM assembler as needed. These instructions take all Register parameters to avoid extra typing of "Operand(reg)".
      
      
      To keep the architectures in sync these changes have been made to the ia32 files:
      - Changed MacroAssembler::EnterFrame(StackFrame::Type type) to MacroAssembler::EnterInternalFrame().
      
      
      These parts are still missing:
      - unimplemented: Builtins::Generate_FunctionApply - large limit
      - unimplemented: Builtins::Generate_ArgumentsAdaptorTrampoline - non-function call
      - The files have not been lint'd yet.
      
      
      Review URL: http://codereview.chromium.org/1930
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      c5ee9618
  20. 09 Sep, 2008 1 commit
  21. 30 Jul, 2008 1 commit
    • kasper.lund's avatar
      Changed all text files to have native svn:eol-style. · 7276f14c
      kasper.lund authored
      Added a few samples and support for building them. The samples include a simple shell that can be used to benchmark and test V8.
      
      Changed V8::GetVersion to return the version as a string.
      
      Added source for lazily loaded scripts to snapshots and made serialization non-destructive.
      
      Improved ARM support by fixing the write barrier code to use aligned loads and stores and by removing premature locals optimization that relied on broken support for callee-saved registers (removed).
      
      Refactored the code for marking live objects during garbage collection and the code for allocating objects in paged spaces. Introduced an abstraction for the map word of a heap-allocated object and changed the memory allocator to allocate executable memory only for spaces that may contain code objects.
      
      Moved StringBuilder to utils.h and ScopedLock to platform.h, where they can be used by debugging and logging modules. Added thread-safe message queues for dealing with debugger events.
      
      Fixed the source code reported by toString for certain builtin empty functions and made sure that the prototype property of a function is enumerable.
      
      Improved performance of converting values to condition flags in generated code.
      
      Merged disassembler-{arch} files.
      
      
      git-svn-id: http://v8.googlecode.com/svn/trunk@8 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      7276f14c
  22. 03 Jul, 2008 1 commit