Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r82601 - in branches/release: boost/context boost/context/detail libs/context libs/context/build libs/context/config libs/context/doc libs/context/src/asm
From: oliver.kowalke_at_[hidden]
Date: 2013-01-25 03:52:13


Author: olli
Date: 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
New Revision: 82601
URL: http://svn.boost.org/trac/boost/changeset/82601

Log:
context: merge from trunk (SPARC support)

Added:
   branches/release/boost/context/detail/fcontext_sparc.hpp
      - copied unchanged from r82600, /trunk/boost/context/detail/fcontext_sparc.hpp
   branches/release/libs/context/config/sparc.cpp
      - copied unchanged from r82600, /trunk/libs/context/config/sparc.cpp
   branches/release/libs/context/src/asm/jump_sparc64_sysv_elf_gas.S
      - copied unchanged from r82600, /trunk/libs/context/src/asm/jump_sparc64_sysv_elf_gas.S
   branches/release/libs/context/src/asm/jump_sparc_sysv_elf_gas.S
      - copied unchanged from r82600, /trunk/libs/context/src/asm/jump_sparc_sysv_elf_gas.S
   branches/release/libs/context/src/asm/make_sparc64_sysv_elf_gas.S
      - copied unchanged from r82600, /trunk/libs/context/src/asm/make_sparc64_sysv_elf_gas.S
   branches/release/libs/context/src/asm/make_sparc_sysv_elf_gas.S
      - copied unchanged from r82600, /trunk/libs/context/src/asm/make_sparc_sysv_elf_gas.S
Properties modified:
   branches/release/boost/context/ (props changed)
   branches/release/libs/context/ (props changed)
Text files modified:
   branches/release/boost/context/fcontext.hpp | 3 ++
   branches/release/libs/context/build/Jamfile.v2 | 49 ++++++++++++++++++++++++++++++++++-----
   branches/release/libs/context/build/architecture.jam | 16 ++++++++----
   branches/release/libs/context/config/Jamfile.jam | 7 +++--
   branches/release/libs/context/doc/Jamfile.v2 | 3 --
   branches/release/libs/context/doc/acknowledgements.qbk | 6 ++--
   branches/release/libs/context/doc/fcontext.qbk | 2
   7 files changed, 63 insertions(+), 23 deletions(-)

Modified: branches/release/boost/context/fcontext.hpp
==============================================================================
--- branches/release/boost/context/fcontext.hpp (original)
+++ branches/release/boost/context/fcontext.hpp 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -59,6 +59,9 @@
     || defined(__ppc__) || defined(_ARCH_PPC) || defined(__POWERPC__) \
     || defined(__PPCGECKO__) || defined(__PPCBROADWAY) || defined(_XENON)
 # include <boost/context/detail/fcontext_ppc.hpp>
+#elif defined(__sparc__) || defined(__sparc)
+// sparc or sparc64
+# include <boost/context/detail/fcontext_sparc.hpp>
 #else
 # error "platform not supported"
 #endif

Modified: branches/release/libs/context/build/Jamfile.v2
==============================================================================
--- branches/release/libs/context/build/Jamfile.v2 (original)
+++ branches/release/libs/context/build/Jamfile.v2 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -17,8 +17,7 @@
 project boost/context
     : source-location ../src
     : requirements
- <os>SOLARIS:<define>_XOPEN_SOURCE=1
- <os>SOLARIS:<define>_XOPEN_SOURCE_EXTENDED=1
+ <os>SOLARIS:<define>_XOPEN_SOURCE=600
     : usage-requirements
       <link>shared:<define>BOOST_CONTEXT_DYN_LINK=1
     ;
@@ -70,7 +69,7 @@
 
 actions armasm
 {
- armasm "$(<)" "$(>)"
+ armasm "$(>)" "$(<)"
 }
 
 actions masm
@@ -138,7 +137,7 @@
      <binary-format>elf
    ;
 
-# MIPS 32bit
+# MIPS
 alias asm_context_sources
    : asm/make_mips32_o32_elf_gas.S
      asm/jump_mips32_o32_elf_gas.S
@@ -162,7 +161,7 @@
      <binary-format>elf
    ;
 
-# POWERPC 32bit
+# POWERPC
 alias asm_context_sources
    : asm/make_ppc32_sysv_elf_gas.S
      asm/jump_ppc32_sysv_elf_gas.S
@@ -189,7 +188,7 @@
      <binary-format>elf
    ;
 
-# POWERPC 64bit
+# POWERPC_64
 alias asm_context_sources
    : asm/make_ppc64_sysv_elf_gas.S
      asm/jump_ppc64_sysv_elf_gas.S
@@ -216,7 +215,43 @@
      <binary-format>elf
    ;
 
-# I386
+# SPARC
+alias asm_context_sources
+ : asm/make_sparc_sysv_elf_gas.S
+ asm/jump_sparc_sysv_elf_gas.S
+ : <address-model>32
+ <architecture>sparc
+ <binary-format>elf
+ <toolset>gcc
+ ;
+
+alias asm_context_sources
+ : [ make asm/make_sparc_sysv_elf_gas.o : asm/make_sparc_sysv_elf_gas.S : @gas ]
+ [ make asm/jump_sparc_sysv_elf_gas.o : asm/jump_sparc_sysv_elf_gas.S : @gas ]
+ : <address-model>32
+ <architecture>sparc
+ <binary-format>elf
+ ;
+
+# SPARC_64
+alias asm_context_sources
+ : asm/make_sparc64_sysv_elf_gas.S
+ asm/jump_sparc64_sysv_elf_gas.S
+ : <address-model>64
+ <architecture>sparc
+ <binary-format>elf
+ <toolset>gcc
+ ;
+
+alias asm_context_sources
+ : [ make asm/make_sparc64_sysv_elf_gas.o : asm/make_sparc64_sysv_elf_gas.S : @gas ]
+ [ make asm/jump_sparc64_sysv_elf_gas.o : asm/jump_sparc64_sysv_elf_gas.S : @gas ]
+ : <address-model>64
+ <architecture>sparc
+ <binary-format>elf
+ ;
+
+# X86
 alias asm_context_sources
    : asm/make_i386_sysv_elf_gas.S
      asm/jump_i386_sysv_elf_gas.S

Modified: branches/release/libs/context/build/architecture.jam
==============================================================================
--- branches/release/libs/context/build/architecture.jam (original)
+++ branches/release/libs/context/build/architecture.jam 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -51,21 +51,25 @@
     }
     else
     {
- if [ configure.builds /boost/architecture//x86 : $(properties) : x86 ]
+ if [ configure.builds /boost/architecture//arm : $(properties) : arm ]
         {
- return <architecture>x86 ;
+ return <architecture>arm ;
+ }
+ else if [ configure.builds /boost/architecture//mips1 : $(properties) : mips1 ]
+ {
+ return <architecture>mips1 ;
         }
         else if [ configure.builds /boost/architecture//power : $(properties) : power ]
         {
             return <architecture>power ;
         }
- else if [ configure.builds /boost/architecture//arm : $(properties) : arm ]
+ else if [ configure.builds /boost/architecture//sparc : $(properties) : sparc ]
         {
- return <architecture>arm ;
+ return <architecture>sparc ;
         }
- else if [ configure.builds /boost/architecture//mips1 : $(properties) : mips1 ]
+ else if [ configure.builds /boost/architecture//x86 : $(properties) : x86 ]
         {
- return <architecture>mips1 ;
+ return <architecture>x86 ;
         }
     }
 }

Modified: branches/release/libs/context/config/Jamfile.jam
==============================================================================
--- branches/release/libs/context/config/Jamfile.jam (original)
+++ branches/release/libs/context/config/Jamfile.jam 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -11,7 +11,8 @@
 obj 32 : 32.cpp ;
 obj 64 : 64.cpp ;
 
-obj power : power.cpp ;
-obj x86 : x86.cpp ;
+obj arm : arm.cpp ;
 obj mips1 : mips1.cpp ;
-obj arm : arm.cpp ;
+obj power : power.cpp ;
+obj sparc : sparc.cpp ;
+obj x86 : x86.cpp ;

Modified: branches/release/libs/context/doc/Jamfile.v2
==============================================================================
--- branches/release/libs/context/doc/Jamfile.v2 (original)
+++ branches/release/libs/context/doc/Jamfile.v2 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -3,9 +3,6 @@
 # Distributed under the Boost Software License, Version 1.0. (See accompanying
 # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 
-using boostbook ;
-using quickbook ;
-
 xml context : context.qbk ;
 
 boostbook standalone

Modified: branches/release/libs/context/doc/acknowledgements.qbk
==============================================================================
--- branches/release/libs/context/doc/acknowledgements.qbk (original)
+++ branches/release/libs/context/doc/acknowledgements.qbk 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -9,8 +9,8 @@
 
 I'd like to thank Adreas Fett, Artyom Beilis, Daniel Larimer, David Deakins,
 Fernando Pelliccioni, Giovanni Piero Deretta, Gordon Woodhull, Helge Bahmann,
-Holger Grund, Jeffrey Lee Hellrung (Jr.), Keith Jeffery, Phil Endecott,
-Robert Stewart, Sergey Cheban, Steven Watanabe, Vicente J. Botet Escriba,
-Wayne Piekarski.
+Holger Grund, Jeffrey Lee Hellrung (Jr.), Keith Jeffery, Martin Husemann,
+Phil Endecott, Robert Stewart, Sergey Cheban, Steven Watanabe,
+Vicente J. Botet Escriba, Wayne Piekarski.
 
 [endsect]

Modified: branches/release/libs/context/doc/fcontext.qbk
==============================================================================
--- branches/release/libs/context/doc/fcontext.qbk (original)
+++ branches/release/libs/context/doc/fcontext.qbk 2013-01-25 03:52:11 EST (Fri, 25 Jan 2013)
@@ -177,7 +177,7 @@
 
 Preserving the floating point registers increases the cycle count for a context
 switch (see performance tests).
-The fourth argument of __jump_fcontext__ controls if fpu registers should be
+The fourth argument of __jump_fcontext__ controls if fpu registers should be
 preserved by the context jump.
 
 [important The use of the fpu controlling argument of __jump_fcontext__ must


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk