diff options
| author | robot-piglet <[email protected]> | 2024-12-19 20:02:09 +0300 | 
|---|---|---|
| committer | robot-piglet <[email protected]> | 2024-12-19 20:57:00 +0300 | 
| commit | 3bf2a018f9e680aa955169cdbf0d5bcf9de9a49f (patch) | |
| tree | 8738f19cabd9950eb6a22f894d05fdfb065b0abe | |
| parent | bd1567a793dad5041020f40fa0e3d9cb13377dad (diff) | |
Intermediate changes
commit_hash:091b9cbc9e2be03ac8fb836365b555ef117982f4
46 files changed, 0 insertions, 5520 deletions
diff --git a/contrib/restricted/boost/context/.yandex_meta/devtools.copyrights.report b/contrib/restricted/boost/context/.yandex_meta/devtools.copyrights.report index 32f11fe362f..22163ccb841 100644 --- a/contrib/restricted/boost/context/.yandex_meta/devtools.copyrights.report +++ b/contrib/restricted/boost/context/.yandex_meta/devtools.copyrights.report @@ -57,21 +57,6 @@ BELONGS ya.make          src/asm/ontop_arm64_aapcs_pe_armasm.masm [1:3]          src/asm/ontop_arm64_aapcs_pe_armclang.S [2:4] -KEEP     COPYRIGHT_SERVICE_LABEL 48ce97ba62fc10cee11a213ab0560d6d -BELONGS ya.make -    License text: -               Copyright Claudio Jeker 2024 -           Distributed under the Boost Software License, Version 1.0. -              (See accompanying file LICENSE_1_0.txt or copy at -    Scancode info: -        Original SPDX id: COPYRIGHT_SERVICE_LABEL -        Score           : 100.00 -        Match type      : COPYRIGHT -    Files with this license: -        src/asm/jump_sparc64_sysv_elf_gas.S [2:4] -        src/asm/make_sparc64_sysv_elf_gas.S [2:4] -        src/asm/ontop_sparc64_sysv_elf_gas.S [2:4] -  KEEP     COPYRIGHT_SERVICE_LABEL 768f987faaed0adc6222ab24c7bd02e6  BELONGS ya.make      License text: @@ -92,13 +77,6 @@ BELONGS ya.make          src/asm/jump_i386_ms_pe_masm.masm [2:4]          src/asm/jump_i386_sysv_elf_gas.S [2:4]          src/asm/jump_i386_sysv_macho_gas.S [2:4] -        src/asm/jump_mips32_o32_elf_gas.S [2:4] -        src/asm/jump_ppc32_sysv_elf_gas.S [2:4] -        src/asm/jump_ppc32_sysv_macho_gas.S [2:4] -        src/asm/jump_ppc32_sysv_xcoff_gas.S [2:4] -        src/asm/jump_ppc64_sysv_elf_gas.S [2:4] -        src/asm/jump_ppc64_sysv_macho_gas.S [2:4] -        src/asm/jump_ppc64_sysv_xcoff_gas.S [3:5]          src/asm/jump_x86_64_ms_pe_clang_gas.S [2:5]          src/asm/jump_x86_64_ms_pe_gas.asm [2:5]          src/asm/jump_x86_64_ms_pe_masm.masm [2:4] @@ -112,13 +90,6 @@ BELONGS ya.make          src/asm/make_i386_ms_pe_masm.masm [2:4]          src/asm/make_i386_sysv_elf_gas.S [2:4]          src/asm/make_i386_sysv_macho_gas.S [2:4] -        src/asm/make_mips32_o32_elf_gas.S [2:4] -        src/asm/make_ppc32_sysv_elf_gas.S [2:4] -        src/asm/make_ppc32_sysv_macho_gas.S [2:4] -        src/asm/make_ppc32_sysv_xcoff_gas.S [2:4] -        src/asm/make_ppc64_sysv_elf_gas.S [2:4] -        src/asm/make_ppc64_sysv_macho_gas.S [2:4] -        src/asm/make_ppc64_sysv_xcoff_gas.S [2:4]          src/asm/make_x86_64_ms_pe_clang_gas.S [2:5]          src/asm/make_x86_64_ms_pe_gas.asm [2:5]          src/asm/make_x86_64_ms_pe_masm.masm [2:4] @@ -132,19 +103,11 @@ BELONGS ya.make          src/asm/ontop_i386_ms_pe_masm.masm [2:4]          src/asm/ontop_i386_sysv_elf_gas.S [2:4]          src/asm/ontop_i386_sysv_macho_gas.S [2:4] -        src/asm/ontop_mips32_o32_elf_gas.S [2:4] -        src/asm/ontop_ppc32_sysv_elf_gas.S [2:4] -        src/asm/ontop_ppc32_sysv_macho_gas.S [2:4] -        src/asm/ontop_ppc32_sysv_xcoff_gas.S [2:4] -        src/asm/ontop_ppc64_sysv_elf_gas.S [2:4] -        src/asm/ontop_ppc64_sysv_macho_gas.S [2:4] -        src/asm/ontop_ppc64_sysv_xcoff_gas.S [2:4]          src/asm/ontop_x86_64_ms_pe_clang_gas.S [2:5]          src/asm/ontop_x86_64_ms_pe_gas.asm [2:5]          src/asm/ontop_x86_64_ms_pe_masm.masm [2:4]          src/asm/ontop_x86_64_sysv_elf_gas.S [2:4]          src/asm/ontop_x86_64_sysv_macho_gas.S [2:4] -        src/asm/tail_ontop_ppc32_sysv.cpp [2:4]          src/untested.cpp [2:4]  KEEP     COPYRIGHT_SERVICE_LABEL 9ed7b7468c684d33492a4176e9cf31b1 @@ -157,21 +120,6 @@ BELONGS ya.make      Files with this license:          src/fcontext.cpp [1:3] -KEEP     COPYRIGHT_SERVICE_LABEL b56e68f168b25ead2610488b3af94842 -BELONGS ya.make -    License text: -                    Copyright Jiaxun Yang 2018. -           Distributed under the Boost Software License, Version 1.0. -              (See accompanying file LICENSE_1_0.txt or copy at -    Scancode info: -        Original SPDX id: COPYRIGHT_SERVICE_LABEL -        Score           : 100.00 -        Match type      : COPYRIGHT -    Files with this license: -        src/asm/jump_mips64_n64_elf_gas.S [2:4] -        src/asm/make_mips64_n64_elf_gas.S [2:4] -        src/asm/ontop_mips64_n64_elf_gas.S [2:4] -  KEEP     COPYRIGHT_SERVICE_LABEL bdb654e3fbbec678064a117bc379b41b  BELONGS ya.make      License text: @@ -183,15 +131,9 @@ BELONGS ya.make          Score           : 100.00          Match type      : COPYRIGHT      Files with this license: -        src/asm/jump_combined_sysv_macho_gas.S [2:4]          src/asm/jump_i386_x86_64_sysv_macho_gas.S [2:4] -        src/asm/jump_ppc32_ppc64_sysv_macho_gas.S [2:4] -        src/asm/make_combined_sysv_macho_gas.S [2:4]          src/asm/make_i386_x86_64_sysv_macho_gas.S [2:4] -        src/asm/make_ppc32_ppc64_sysv_macho_gas.S [2:4] -        src/asm/ontop_combined_sysv_macho_gas.S [2:4]          src/asm/ontop_i386_x86_64_sysv_macho_gas.S [2:4] -        src/asm/ontop_ppc32_ppc64_sysv_macho_gas.S [2:4]  KEEP     COPYRIGHT_SERVICE_LABEL c3ce9643507aa0942a28211fe8f95eff  BELONGS ya.make diff --git a/contrib/restricted/boost/context/.yandex_meta/devtools.licenses.report b/contrib/restricted/boost/context/.yandex_meta/devtools.licenses.report index 92e42b34046..2ab10925410 100644 --- a/contrib/restricted/boost/context/.yandex_meta/devtools.licenses.report +++ b/contrib/restricted/boost/context/.yandex_meta/devtools.licenses.report @@ -149,34 +149,6 @@ BELONGS ya.make          src/untested.cpp [3:5]          src/windows/stack_traits.cpp [3:5] -KEEP     BSL-1.0              a56863ff22557bda50c7e49c3d85f911 -BELONGS ya.make -    License text: -        // 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) -    Scancode info: -        Original SPDX id: BSL-1.0 -        Score           : 100.00 -        Match type      : NOTICE -        Links           : http://www.boost.org/LICENSE_1_0.txt, http://www.boost.org/users/license.html, https://spdx.org/licenses/BSL-1.0 -    Files with this license: -        src/asm/tail_ontop_ppc32_sysv.cpp [3:5] - -KEEP     BSL-1.0              b8bd11cab76fe04f0b68b48ae6bc9630 -BELONGS ya.make -    License text: -           Distributed under the Boost Software License, Version 1.0. -              (See accompanying file LICENSE_1_0.txt or copy at -                  http://www.boost.org/LICENSE -    Scancode info: -        Original SPDX id: BSL-1.0 -        Score           : 88.89 -        Match type      : NOTICE -        Links           : http://www.boost.org/LICENSE_1_0.txt, http://www.boost.org/users/license.html, https://spdx.org/licenses/BSL-1.0 -    Files with this license: -        src/asm/ontop_mips64_n64_elf_gas.S [3:5] -  KEEP     BSL-1.0              d398f407edc1c91c48f2e7613f7602d5  BELONGS ya.make      License text: @@ -224,55 +196,20 @@ BELONGS ya.make          src/asm/jump_arm64_aapcs_macho_gas.S [3:5]          src/asm/jump_arm_aapcs_elf_gas.S [3:5]          src/asm/jump_arm_aapcs_macho_gas.S [3:5] -        src/asm/jump_combined_sysv_macho_gas.S [3:5]          src/asm/jump_i386_sysv_elf_gas.S [3:5]          src/asm/jump_i386_sysv_macho_gas.S [3:5]          src/asm/jump_i386_x86_64_sysv_macho_gas.S [3:5] -        src/asm/jump_mips32_o32_elf_gas.S [3:5] -        src/asm/jump_mips64_n64_elf_gas.S [3:5] -        src/asm/jump_ppc32_ppc64_sysv_macho_gas.S [3:5] -        src/asm/jump_ppc32_sysv_elf_gas.S [3:5] -        src/asm/jump_ppc32_sysv_macho_gas.S [3:5] -        src/asm/jump_ppc32_sysv_xcoff_gas.S [3:5] -        src/asm/jump_ppc64_sysv_elf_gas.S [3:5] -        src/asm/jump_ppc64_sysv_macho_gas.S [3:5] -        src/asm/jump_ppc64_sysv_xcoff_gas.S [4:6] -        src/asm/jump_riscv64_sysv_elf_gas.S [2:4] -        src/asm/jump_sparc64_sysv_elf_gas.S [3:5]          src/asm/make_arm64_aapcs_elf_gas.S [3:5]          src/asm/make_arm64_aapcs_macho_gas.S [3:5]          src/asm/make_arm_aapcs_elf_gas.S [3:5]          src/asm/make_arm_aapcs_macho_gas.S [3:5] -        src/asm/make_combined_sysv_macho_gas.S [3:5]          src/asm/make_i386_sysv_elf_gas.S [3:5]          src/asm/make_i386_sysv_macho_gas.S [3:5]          src/asm/make_i386_x86_64_sysv_macho_gas.S [3:5] -        src/asm/make_mips32_o32_elf_gas.S [3:5] -        src/asm/make_mips64_n64_elf_gas.S [3:5] -        src/asm/make_ppc32_ppc64_sysv_macho_gas.S [3:5] -        src/asm/make_ppc32_sysv_elf_gas.S [3:5] -        src/asm/make_ppc32_sysv_macho_gas.S [3:5] -        src/asm/make_ppc32_sysv_xcoff_gas.S [3:5] -        src/asm/make_ppc64_sysv_elf_gas.S [3:5] -        src/asm/make_ppc64_sysv_macho_gas.S [3:5] -        src/asm/make_ppc64_sysv_xcoff_gas.S [3:5] -        src/asm/make_riscv64_sysv_elf_gas.S [2:4] -        src/asm/make_sparc64_sysv_elf_gas.S [3:5]          src/asm/ontop_arm64_aapcs_elf_gas.S [3:5]          src/asm/ontop_arm64_aapcs_macho_gas.S [3:5]          src/asm/ontop_arm_aapcs_elf_gas.S [3:5]          src/asm/ontop_arm_aapcs_macho_gas.S [3:5] -        src/asm/ontop_combined_sysv_macho_gas.S [3:5]          src/asm/ontop_i386_sysv_elf_gas.S [3:5]          src/asm/ontop_i386_sysv_macho_gas.S [3:5]          src/asm/ontop_i386_x86_64_sysv_macho_gas.S [3:5] -        src/asm/ontop_mips32_o32_elf_gas.S [3:5] -        src/asm/ontop_ppc32_ppc64_sysv_macho_gas.S [3:5] -        src/asm/ontop_ppc32_sysv_elf_gas.S [3:5] -        src/asm/ontop_ppc32_sysv_macho_gas.S [3:5] -        src/asm/ontop_ppc32_sysv_xcoff_gas.S [3:5] -        src/asm/ontop_ppc64_sysv_elf_gas.S [3:5] -        src/asm/ontop_ppc64_sysv_macho_gas.S [3:5] -        src/asm/ontop_ppc64_sysv_xcoff_gas.S [3:5] -        src/asm/ontop_riscv64_sysv_elf_gas.S [2:4] -        src/asm/ontop_sparc64_sysv_elf_gas.S [3:5] diff --git a/contrib/restricted/boost/context/.yandex_meta/licenses.list.txt b/contrib/restricted/boost/context/.yandex_meta/licenses.list.txt index 7ab7afd143d..abc7fe5d55e 100644 --- a/contrib/restricted/boost/context/.yandex_meta/licenses.list.txt +++ b/contrib/restricted/boost/context/.yandex_meta/licenses.list.txt @@ -7,12 +7,6 @@  ====================BSL-1.0====================     Distributed under the Boost Software License, Version 1.0.        (See accompanying file LICENSE_1_0.txt or copy at -          http://www.boost.org/LICENSE - - -====================BSL-1.0==================== -   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) @@ -29,12 +23,6 @@  ====================BSL-1.0==================== -// 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) - - -====================BSL-1.0====================  ;   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) @@ -53,12 +41,6 @@  ====================COPYRIGHT==================== -            Copyright Jiaxun Yang 2018. -   Distributed under the Boost Software License, Version 1.0. -      (See accompanying file LICENSE_1_0.txt or copy at - - -====================COPYRIGHT====================              Copyright Oliver Kowalke 2009.              Copyright Thomas Sailer 2013.     Distributed under the Boost Software License, Version 1.0. @@ -72,12 +54,6 @@  ====================COPYRIGHT==================== -       Copyright Claudio Jeker 2024 -   Distributed under the Boost Software License, Version 1.0. -      (See accompanying file LICENSE_1_0.txt or copy at - - -====================COPYRIGHT====================         Copyright Edward Nevill + Oliver Kowalke 2015     Distributed under the Boost Software License, Version 1.0.        (See accompanying file LICENSE_1_0.txt or copy at diff --git a/contrib/restricted/boost/context/src/asm/jump_combined_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/jump_combined_sysv_macho_gas.S deleted file mode 100644 index 34a32f785f2..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_combined_sysv_macho_gas.S +++ /dev/null @@ -1,24 +0,0 @@ -/* -            Copyright Sergue E. Leontiev 2013. -   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) -*/ - -// Stub file for universal binary - -#if defined(__i386__) -    #include "jump_i386_sysv_macho_gas.S" -#elif defined(__x86_64__) -    #include "jump_x86_64_sysv_macho_gas.S" -#elif defined(__ppc__) -    #include "jump_ppc32_sysv_macho_gas.S" -#elif defined(__ppc64__) -    #include "jump_ppc64_sysv_macho_gas.S" -#elif defined(__arm__) -    #include "jump_arm_aapcs_macho_gas.S" -#elif defined(__arm64__) -    #include "jump_arm64_aapcs_macho_gas.S" -#else -    #error "No arch's" -#endif diff --git a/contrib/restricted/boost/context/src/asm/jump_loongarch64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_loongarch64_sysv_elf_gas.S deleted file mode 100644 index 6f99e719ec0..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_loongarch64_sysv_elf_gas.S +++ /dev/null @@ -1,122 +0,0 @@ -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |     24    |  * - *  -------------------------------------------------  * - *  |    FS0    |    FS1    |    FS2    |    FS3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |    FS4    |    FS5    |    FS6    |    FS7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |    72     |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    S0     |    S1     |     S2    |     S3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    S4     |    S5     |     S6    |     S7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    S8     |    FP     |     RA    |     PC    |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "jump_loongarch64_sysv_elf_gas.S" -.text -.globl jump_fcontext -.hidden jump_fcontext -.align 2 -.type jump_fcontext,@function -jump_fcontext: -    # reserve space on stack -    addi.d  $sp, $sp, -160 - -    # save fs0 - fs7 -    fst.d  $fs0, $sp, 0 -    fst.d  $fs1, $sp, 8 -    fst.d  $fs2, $sp, 16 -    fst.d  $fs3, $sp, 24 -    fst.d  $fs4, $sp, 32 -    fst.d  $fs5, $sp, 40 -    fst.d  $fs6, $sp, 48 -    fst.d  $fs7, $sp, 56 - -    # save s0 - s8, fp, ra -    st.d  $s0, $sp, 64 -    st.d  $s1, $sp, 72 -    st.d  $s2, $sp, 80 -    st.d  $s3, $sp, 88 -    st.d  $s4, $sp, 96 -    st.d  $s5, $sp, 104 -    st.d  $s6, $sp, 112 -    st.d  $s7, $sp, 120 -    st.d  $s8, $sp, 128 -    st.d  $fp, $sp, 136 -    st.d  $ra, $sp, 144 - -    # save RA as PC -    st.d  $ra, $sp, 152 - -    # store SP (pointing to context-data) in A2 -    move  $a2, $sp - -    # restore SP (pointing to context-data) from A0 -    move  $sp, $a0 - -    # load fs0 - fs7 -    fld.d  $fs0, $sp, 0 -    fld.d  $fs1, $sp, 8 -    fld.d  $fs2, $sp, 16 -    fld.d  $fs3, $sp, 24 -    fld.d  $fs4, $sp, 32 -    fld.d  $fs5, $sp, 40 -    fld.d  $fs6, $sp, 48 -    fld.d  $fs7, $sp, 56 - -    #load s0 - s7 -    ld.d  $s0, $sp, 64 -    ld.d  $s1, $sp, 72 -    ld.d  $s2, $sp, 80 -    ld.d  $s3, $sp, 88 -    ld.d  $s4, $sp, 96 -    ld.d  $s5, $sp, 104 -    ld.d  $s6, $sp, 112 -    ld.d  $s7, $sp, 120 -    ld.d  $s8, $sp, 128 -    ld.d  $fp, $sp, 136 -    ld.d  $ra, $sp, 144 - -    # return transfer_t from jump -    # pass transfer_t as first arg in context function -    # a0 == FCTX, a1 == DATA -    move  $a0, $a2 - -    # load PC -    ld.d  $a2, $sp, 152 - -    # restore stack -    addi.d  $sp, $sp, 160 - -    # jump to context -    jr  $a2 -.size jump_fcontext, .-jump_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_mips32_o32_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_mips32_o32_elf_gas.S deleted file mode 100644 index df0676b604c..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_mips32_o32_elf_gas.S +++ /dev/null @@ -1,120 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    F20    |    F22    |    F24    |    F26    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    F28    |    F30    |  S0 |  S1 |  S2 |  S3 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |  S4 |  S5 |  S6 |  S7 |  FP |hiddn|  RA |  PC |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |       ABI ARGS        |  GP | FCTX| DATA|     |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "jump_mips32_o32_elf_gas.S" -.text -.globl jump_fcontext -.hidden jump_fcontext -.align 2 -.type jump_fcontext,@function -.ent jump_fcontext -jump_fcontext: -    # reserve space on stack -    addiu $sp, $sp, -96 - -    sw  $s0, 48($sp)  # save S0 -    sw  $s1, 52($sp)  # save S1 -    sw  $s2, 56($sp)  # save S2 -    sw  $s3, 60($sp)  # save S3 -    sw  $s4, 64($sp)  # save S4 -    sw  $s5, 68($sp)  # save S5 -    sw  $s6, 72($sp)  # save S6 -    sw  $s7, 76($sp)  # save S7 -    sw  $fp, 80($sp)  # save FP -    sw  $a0, 84($sp)  # save hidden, address of returned transfer_t -    sw  $ra, 88($sp)  # save RA -    sw  $ra, 92($sp)  # save RA as PC - -#if defined(__mips_hard_float) -    s.d  $f20, ($sp)  # save F20 -    s.d  $f22, 8($sp)  # save F22 -    s.d  $f24, 16($sp)  # save F24 -    s.d  $f26, 24($sp)  # save F26 -    s.d  $f28, 32($sp)  # save F28 -    s.d  $f30, 40($sp)  # save F30 -#endif - -    # store SP (pointing to context-data) in A0 -    move  $a0, $sp - -    # restore SP (pointing to context-data) from A1 -    move  $sp, $a1 - -#if defined(__mips_hard_float) -    l.d  $f20, ($sp)  # restore F20 -    l.d  $f22, 8($sp)  # restore F22 -    l.d  $f24, 16($sp)  # restore F24 -    l.d  $f26, 24($sp)  # restore F26 -    l.d  $f28, 32($sp)  # restore F28 -    l.d  $f30, 40($sp)  # restore F30 -#endif - -    lw  $s0, 48($sp)  # restore S0 -    lw  $s1, 52($sp)  # restore S1 -    lw  $s2, 56($sp)  # restore S2 -    lw  $s3, 60($sp)  # restore S3 -    lw  $s4, 64($sp)  # restore S4 -    lw  $s5, 68($sp)  # restore S5 -    lw  $s6, 72($sp)  # restore S6 -    lw  $s7, 76($sp)  # restore S7 -    lw  $fp, 80($sp)  # restore FP -    lw  $v0, 84($sp)  # restore hidden, address of returned transfer_t -    lw  $ra, 88($sp)  # restore RA - -    # load PC -    lw  $t9, 92($sp) - -    # adjust stack -    addiu $sp, $sp, 96 -     -    # return transfer_t from jump -    sw  $a0, ($v0)  # fctx of transfer_t -    sw  $a2, 4($v0) # data of transfer_t -    # pass transfer_t as first arg in context function -    # A0 == fctx, A1 == data -    move  $a1, $a2  - -    # jump to context -    jr  $t9 -.end jump_fcontext -.size jump_fcontext, .-jump_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_mips64_n64_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_mips64_n64_elf_gas.S deleted file mode 100644 index 60027fe6173..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_mips64_n64_elf_gas.S +++ /dev/null @@ -1,125 +0,0 @@ -/* -            Copyright Jiaxun Yang 2018. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |     24    |  * - *  -------------------------------------------------  * - *  |    F24    |    F25    |    F26    |    F27    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |    F28    |    F29    |    F30    |    F31    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |    72     |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    S0     |    S1     |     S2    |     S3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    S4     |    S5     |     S6    |     S7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    FP     |    GP     |     RA    |     PC    |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "jump_mips64_n64_elf_gas.S" -.text -.globl jump_fcontext -.hidden jump_fcontext -.align 3 -.type jump_fcontext,@function -.ent jump_fcontext -jump_fcontext: -    # reserve space on stack -    daddiu $sp, $sp, -160 - -    sd  $s0, 64($sp)  # save S0 -    sd  $s1, 72($sp)  # save S1 -    sd  $s2, 80($sp)  # save S2 -    sd  $s3, 88($sp)  # save S3 -    sd  $s4, 96($sp)  # save S4 -    sd  $s5, 104($sp) # save S5 -    sd  $s6, 112($sp) # save S6 -    sd  $s7, 120($sp) # save S7 -    sd  $fp, 128($sp) # save FP -    sd  $ra, 144($sp) # save RA -    sd  $ra, 152($sp) # save RA as PC - -#if defined(__mips_hard_float) -    s.d  $f24, 0($sp)   # save F24 -    s.d  $f25, 8($sp)   # save F25 -    s.d  $f26, 16($sp)  # save F26 -    s.d  $f27, 24($sp)  # save F27 -    s.d  $f28, 32($sp)  # save F28 -    s.d  $f29, 40($sp)  # save F29 -    s.d  $f30, 48($sp)  # save F30 -    s.d  $f31, 56($sp)  # save F31 -#endif - -    # store SP (pointing to old context-data) in v0 as return -    move  $v0, $sp - -    # get SP (pointing to new context-data) from a0 param -    move  $sp, $a0 - -#if defined(__mips_hard_float) -    l.d  $f24, 0($sp)   # restore F24 -    l.d  $f25, 8($sp)   # restore F25 -    l.d  $f26, 16($sp)  # restore F26 -    l.d  $f27, 24($sp)  # restore F27 -    l.d  $f28, 32($sp)  # restore F28 -    l.d  $f29, 40($sp)  # restore F29 -    l.d  $f30, 48($sp)  # restore F30 -    l.d  $f31, 56($sp)  # restore F31 -#endif - -    ld  $s0, 64($sp)  # restore S0 -    ld  $s1, 72($sp)  # restore S1 -    ld  $s2, 80($sp)  # restore S2 -    ld  $s3, 88($sp)  # restore S3 -    ld  $s4, 96($sp)  # restore S4 -    ld  $s5, 104($sp) # restore S5 -    ld  $s6, 112($sp) # restore S6 -    ld  $s7, 120($sp) # restore S7 -    ld  $fp, 128($sp) # restore FP -    ld  $ra, 144($sp) # restore RAa - -    # load PC -    ld  $t9, 152($sp) - -    # adjust stack -    daddiu $sp, $sp, 160 - -    move  $a0, $v0 # move old sp from v0 to a0 as param -    move  $v1, $a1 # move *data from a1 to v1 as return - -    # jump to context -    jr  $t9 -.end jump_fcontext -.size jump_fcontext, .-jump_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc32_ppc64_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc32_ppc64_sysv_macho_gas.S deleted file mode 100644 index f175e31233f..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc32_ppc64_sysv_macho_gas.S +++ /dev/null @@ -1,16 +0,0 @@ -/* -            Copyright Sergue E. Leontiev 2013. -   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) -*/ - -// Stub file for universal binary - -#if defined(__ppc__) -    #include "jump_ppc32_sysv_macho_gas.S" -#elif defined(__ppc64__) -    #include "jump_ppc64_sysv_macho_gas.S" -#else -    #error "No arch's" -#endif diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_elf_gas.S deleted file mode 100644 index e3133664006..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_elf_gas.S +++ /dev/null @@ -1,202 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |bchai|hiddn|   fpscr   |  PC |  CR | R14 | R15 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  | R16 | R17 | R18 | R19 | R20 | R21 | R22 | R23 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  | R24 | R25 | R26 | R27 | R28 | R29 | R30 | R31 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  ------------------------|------------              * - *  | 224 | 228 | 232 | 236 | 240 | 244 |              * - *  ------------------------|------------              * - *  |    F30    |    F31    |bchai|  LR |              * - *  ------------------------|------------              * - *                                                     * - *******************************************************/ - -.file "jump_ppc32_sysv_elf_gas.S" -.text -.globl jump_fcontext -.hidden jump_fcontext -.align 2 -.type jump_fcontext,@function -jump_fcontext: -    # Linux: jump_fcontext( hidden transfer_t * R3, R4, R5) -    # Other: transfer_t R3:R4 = jump_fcontext( R3, R4) - -    mflr  %r0  # return address from LR -    mffs  %f0  # FPSCR -    mfcr  %r8  # condition register - -    stwu  %r1, -240(%r1)  # allocate stack space, R1 % 16 == 0 -    stw   %r0, 244(%r1)   # save LR in caller's frame - -#ifdef __linux__ -    stw   %r3, 4(%r1)   # hidden pointer -#endif - -    stfd  %f0, 8(%r1)   # FPSCR -    stw   %r0, 16(%r1)  # LR as PC -    stw   %r8, 20(%r1)  # CR - -    # Save registers R14 to R31. -    # Don't change R2, the thread-local storage pointer. -    # Don't change R13, the small data pointer. -    stw   %r14, 24(%r1) -    stw   %r15, 28(%r1) -    stw   %r16, 32(%r1) -    stw   %r17, 36(%r1) -    stw   %r18, 40(%r1) -    stw   %r19, 44(%r1) -    stw   %r20, 48(%r1) -    stw   %r21, 52(%r1) -    stw   %r22, 56(%r1) -    stw   %r23, 60(%r1) -    stw   %r24, 64(%r1) -    stw   %r25, 68(%r1) -    stw   %r26, 72(%r1) -    stw   %r27, 76(%r1) -    stw   %r28, 80(%r1) -    stw   %r29, 84(%r1) -    stw   %r30, 88(%r1) -    stw   %r31, 92(%r1) - -    # Save registers F14 to F31 in slots with 8-byte alignment. -    # 4-byte alignment may stall the pipeline of some processors. -    # Less than 4 may cause alignment traps. -    stfd  %f14, 96(%r1) -    stfd  %f15, 104(%r1) -    stfd  %f16, 112(%r1) -    stfd  %f17, 120(%r1) -    stfd  %f18, 128(%r1) -    stfd  %f19, 136(%r1) -    stfd  %f20, 144(%r1) -    stfd  %f21, 152(%r1) -    stfd  %f22, 160(%r1) -    stfd  %f23, 168(%r1) -    stfd  %f24, 176(%r1) -    stfd  %f25, 184(%r1) -    stfd  %f26, 192(%r1) -    stfd  %f27, 200(%r1) -    stfd  %f28, 208(%r1) -    stfd  %f29, 216(%r1) -    stfd  %f30, 224(%r1) -    stfd  %f31, 232(%r1) - -    # store RSP (pointing to context-data) in R7/R6 -    # restore RSP (pointing to context-data) from R4/R3 -#ifdef __linux__ -    mr   %r7, %r1 -    mr   %r1, %r4 -    lwz  %r3, 4(%r1)   # hidden pointer -#else -    mr   %r6, %r1 -    mr   %r1, %r3 -#endif - -    lfd  %f0, 8(%r1)   # FPSCR -    lwz  %r0, 16(%r1)  # PC -    lwz  %r8, 20(%r1)  # CR - -    mtfsf  0xff, %f0   # restore FPSCR -    mtctr  %r0         # load CTR with PC -    mtcr   %r8         # restore CR - -    # restore R14 to R31 -    lwz  %r14, 24(%r1) -    lwz  %r15, 28(%r1) -    lwz  %r16, 32(%r1) -    lwz  %r17, 36(%r1) -    lwz  %r18, 40(%r1) -    lwz  %r19, 44(%r1) -    lwz  %r20, 48(%r1) -    lwz  %r21, 52(%r1) -    lwz  %r22, 56(%r1) -    lwz  %r23, 60(%r1) -    lwz  %r24, 64(%r1) -    lwz  %r25, 68(%r1) -    lwz  %r26, 72(%r1) -    lwz  %r27, 76(%r1) -    lwz  %r28, 80(%r1) -    lwz  %r29, 84(%r1) -    lwz  %r30, 88(%r1) -    lwz  %r31, 92(%r1) - -    # restore F14 to F31 -    lfd  %f14, 96(%r1) -    lfd  %f15, 104(%r1) -    lfd  %f16, 112(%r1) -    lfd  %f17, 120(%r1) -    lfd  %f18, 128(%r1) -    lfd  %f19, 136(%r1) -    lfd  %f20, 144(%r1) -    lfd  %f21, 152(%r1) -    lfd  %f22, 160(%r1) -    lfd  %f23, 168(%r1) -    lfd  %f24, 176(%r1) -    lfd  %f25, 184(%r1) -    lfd  %f26, 192(%r1) -    lfd  %f27, 200(%r1) -    lfd  %f28, 208(%r1) -    lfd  %f29, 216(%r1) -    lfd  %f30, 224(%r1) -    lfd  %f31, 232(%r1) - -    # restore LR from caller's frame -    lwz   %r0, 244(%r1) -    mtlr  %r0 - -    # adjust stack -    addi  %r1, %r1, 240 - -    # return transfer_t -#ifdef __linux__ -    stw  %r7, 0(%r3) -    stw  %r5, 4(%r3) -#else -    mr   %r3, %r6 -    #    %r4, %r4 -#endif - -    # jump to context -    bctr -.size jump_fcontext, .-jump_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_macho_gas.S deleted file mode 100644 index 10e6113639f..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_macho_gas.S +++ /dev/null @@ -1,202 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/****************************************************** - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F30    |    F31    |   fpscr   | R13 | R14 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  | R15 | R16 | R17 | R18 | R19 | R20 | R21 | R22 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  | R23 | R24 | R25 | R26 | R27 | R28 | R29 | R30 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | R31 |hiddn|  CR |  LR |  PC |bchai|linkr| FCTX|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |                                         |  * - *  -------------------------------------------------  * - *  | 256 |                                         |  * - *  -------------------------------------------------  * - *  | DATA|                                         |  *  - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.text -.private_extern _jump_fcontext -.globl _jump_fcontext -.align 2 -_jump_fcontext: -    ; reserve space on stack -    subi  r1, r1, 244 - -    stfd  f14, 0(r1)  ; save F14 -    stfd  f15, 8(r1)  ; save F15 -    stfd  f16, 16(r1)  ; save F16 -    stfd  f17, 24(r1)  ; save F17 -    stfd  f18, 32(r1)  ; save F18 -    stfd  f19, 40(r1)  ; save F19 -    stfd  f20, 48(r1)  ; save F20 -    stfd  f21, 56(r1)  ; save F21 -    stfd  f22, 64(r1)  ; save F22 -    stfd  f23, 72(r1)  ; save F23 -    stfd  f24, 80(r1)  ; save F24 -    stfd  f25, 88(r1)  ; save F25 -    stfd  f26, 96(r1)  ; save F26 -    stfd  f27, 104(r1)  ; save F27 -    stfd  f28, 112(r1)  ; save F28 -    stfd  f29, 120(r1)  ; save F29 -    stfd  f30, 128(r1)  ; save F30 -    stfd  f31, 136(r1)  ; save F31 -    mffs  f0  ; load FPSCR -    stfd  f0, 144(r1)  ; save FPSCR - -    stw  r13, 152(r1)  ; save R13 -    stw  r14, 156(r1)  ; save R14 -    stw  r15, 160(r1)  ; save R15 -    stw  r16, 164(r1)  ; save R16 -    stw  r17, 168(r1)  ; save R17 -    stw  r18, 172(r1)  ; save R18 -    stw  r19, 176(r1)  ; save R19 -    stw  r20, 180(r1)  ; save R20 -    stw  r21, 184(r1)  ; save R21 -    stw  r22, 188(r1)  ; save R22 -    stw  r23, 192(r1)  ; save R23 -    stw  r24, 196(r1)  ; save R24 -    stw  r25, 200(r1)  ; save R25 -    stw  r26, 204(r1)  ; save R26 -    stw  r27, 208(r1)  ; save R27 -    stw  r28, 212(r1)  ; save R28 -    stw  r29, 216(r1)  ; save R29 -    stw  r30, 220(r1)  ; save R30 -    stw  r31, 224(r1)  ; save R31 -    stw  r3,  228(r1)  ; save hidden - -    ; save CR -    mfcr  r0 -    stw   r0, 232(r1) -    ; save LR -    mflr  r0 -    stw   r0, 236(r1) -    ; save LR as PC -    stw   r0, 240(r1) - -    ; store RSP (pointing to context-data) in R6 -    mr  r6, r1 - -    ; restore RSP (pointing to context-data) from R4 -    mr  r1, r4 - -    lfd  f14, 0(r1)  ; restore F14 -    lfd  f15, 8(r1)  ; restore F15 -    lfd  f16, 16(r1)  ; restore F16 -    lfd  f17, 24(r1)  ; restore F17 -    lfd  f18, 32(r1)  ; restore F18 -    lfd  f19, 40(r1)  ; restore F19 -    lfd  f20, 48(r1)  ; restore F20 -    lfd  f21, 56(r1)  ; restore F21 -    lfd  f22, 64(r1)  ; restore F22 -    lfd  f23, 72(r1)  ; restore F23 -    lfd  f24, 80(r1)  ; restore F24 -    lfd  f25, 88(r1)  ; restore F25 -    lfd  f26, 96(r1)  ; restore F26 -    lfd  f27, 104(r1)  ; restore F27 -    lfd  f28, 112(r1)  ; restore F28 -    lfd  f29, 120(r1)  ; restore F29 -    lfd  f30, 128(r1)  ; restore F30 -    lfd  f31, 136(r1)  ; restore F31 -    lfd  f0,  144(r1)  ; load FPSCR -    mtfsf  0xff, f0  ; restore FPSCR - -    lwz  r13, 152(r1)  ; restore R13 -    lwz  r14, 156(r1)  ; restore R14 -    lwz  r15, 160(r1)  ; restore R15 -    lwz  r16, 164(r1)  ; restore R16 -    lwz  r17, 168(r1)  ; restore R17 -    lwz  r18, 172(r1)  ; restore R18 -    lwz  r19, 176(r1)  ; restore R19 -    lwz  r20, 180(r1)  ; restore R20 -    lwz  r21, 184(r1)  ; restore R21 -    lwz  r22, 188(r1)  ; restore R22 -    lwz  r23, 192(r1)  ; restore R23 -    lwz  r24, 196(r1)  ; restore R24 -    lwz  r25, 200(r1)  ; restore R25 -    lwz  r26, 204(r1)  ; restore R26 -    lwz  r27, 208(r1)  ; restore R27 -    lwz  r28, 212(r1)  ; restore R28 -    lwz  r29, 216(r1)  ; restore R29 -    lwz  r30, 220(r1)  ; restore R30 -    lwz  r31, 224(r1)  ; restore R31 -    lwz  r3,  228(r1)  ; restore hidden - -    ; restore CR -    lwz   r0, 232(r1) -    mtcr  r0 -    ; restore LR -    lwz   r0, 236(r1) -    mtlr  r0 -    ; load PC -    lwz   r0, 240(r1) -    ; restore CTR -    mtctr r0 - -    ; adjust stack -    addi  r1, r1, 244 - -    ; return transfer_t  -    stw  r6, 0(r3) -    stw  r5, 4(r3) - -    ; jump to context -    bctr diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_xcoff_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_xcoff_gas.S deleted file mode 100644 index 1854613d761..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc32_sysv_xcoff_gas.S +++ /dev/null @@ -1,216 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |bchai|  CR | LR  |compl| link| TOC | R14 | R15 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  | R16 | R17 | R18 | R19 | R20 | R21 | R22 | R23 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  | R24 | R25 | R26 | R27 | R28 | R29 | R30 | R31 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  |    F30    |    F31    |  PC |hiddn|  fpscr    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 256 | 260 | 264 | 268 | 272 | 276 | 280 | 284 |  * - *  -------------------------------------------------  * - *  |bchai|savCR|savLR|compl| link|svTOC| FCTX| DATA|  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -    .file "jump_ppc32_sysv_xcoff_gas.S" -    .toc -    .csect .text[PR], 5 -    .globl  jump_fcontext[DS] -    .globl .jump_fcontext -    .csect  jump_fcontext[DS] -jump_fcontext: -    .long .jump_fcontext[PR], TOC[tc0], 0 -    .csect .text[PR], 5 -.jump_fcontext: -    # reserve space on stack -    subi  1, 1, 256 - -    # save CR -    mfcr  0 -    stw   0, 4(1) -    # save LR -    mflr  0 -    stw   0, 8(1) -    # save LR as PC -    stw   0, 240(1) -    # save TOC -    stw   2, 20(1) - -    # Save registers R14 to R31. -    stw   14, 24(1) -    stw   15, 28(1) -    stw   16, 32(1) -    stw   17, 36(1) -    stw   18, 40(1) -    stw   19, 44(1) -    stw   20, 48(1) -    stw   21, 52(1) -    stw   22, 56(1) -    stw   23, 60(1) -    stw   24, 64(1) -    stw   25, 68(1) -    stw   26, 72(1) -    stw   27, 76(1) -    stw   28, 80(1) -    stw   29, 84(1) -    stw   30, 88(1) -    stw   31, 92(1) - -    # Save registers F14 to F31 in slots with 8-byte alignment. -    # 4-byte alignment may stall the pipeline of some processors. -    # Less than 4 may cause alignment traps. -    stfd  14, 96(1) -    stfd  15, 104(1) -    stfd  16, 112(1) -    stfd  17, 120(1) -    stfd  18, 128(1) -    stfd  19, 136(1) -    stfd  20, 144(1) -    stfd  21, 152(1) -    stfd  22, 160(1) -    stfd  23, 168(1) -    stfd  24, 176(1) -    stfd  25, 184(1) -    stfd  26, 192(1) -    stfd  27, 200(1) -    stfd  28, 208(1) -    stfd  29, 216(1) -    stfd  30, 224(1) -    stfd  31, 232(1) - -    # hidden pointer -    stw   3, 244(1) - -    mffs  0  # load FPSCR -    stfd  0, 248(1)  # save FPSCR - - -    # store RSP (pointing to context-data) in R6 -    mr  6, 1 - -    # restore RSP (pointing to context-data) from R4 -    mr  1, 4 - -    # restore CR -    lwz   0, 4(1) -    mtcr  0 -    # restore LR -    lwz   0, 8(1) -    mtlr  0 -    # load PC -    lwz   0, 240(1) -    mtctr 0 - -    # restore TOC -    lwz   2, 20(1) - -    # restore R14 to R31 -    lwz  14, 24(1) -    lwz  15, 28(1) -    lwz  16, 32(1) -    lwz  17, 36(1) -    lwz  18, 40(1) -    lwz  19, 44(1) -    lwz  20, 48(1) -    lwz  21, 52(1) -    lwz  22, 56(1) -    lwz  23, 60(1) -    lwz  24, 64(1) -    lwz  25, 68(1) -    lwz  26, 72(1) -    lwz  27, 76(1) -    lwz  28, 80(1) -    lwz  29, 84(1) -    lwz  30, 88(1) -    lwz  31, 92(1) - -    # restore F14 to F31 -    lfd  14, 96(1) -    lfd  15, 104(1) -    lfd  16, 112(1) -    lfd  17, 120(1) -    lfd  18, 128(1) -    lfd  19, 136(1) -    lfd  20, 144(1) -    lfd  21, 152(1) -    lfd  22, 160(1) -    lfd  23, 168(1) -    lfd  24, 176(1) -    lfd  25, 184(1) -    lfd  26, 192(1) -    lfd  27, 200(1) -    lfd  28, 208(1) -    lfd  29, 216(1) -    lfd  30, 224(1) -    lfd  31, 232(1) - -    # hidden pointer -    lwz   3, 244(1) - -    lfd  0,  248(1)  # load FPSCR -    mtfsf  0xff, 0  # restore FPSCR - -    # adjust stack -    addi  1, 1, 256 - -    # zero in r3 indicates first jump to context-function -    cmpdi 3, 0 -    beq use_entry_arg - -    # return transfer_t -    stw  6, 0(3) -    stw  5, 4(3) - -    # jump to context -    bctr - -use_entry_arg: -    # copy transfer_t into transfer_fn arg registers -    mr  3, 6 -    mr  4, 5 - -    # jump to context -    bctr diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_elf_gas.S deleted file mode 100644 index fc3c6d63dc7..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_elf_gas.S +++ /dev/null @@ -1,222 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    TOC    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | TOC saved |    FCTX   |    DATA   |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.file "jump_ppc64_sysv_elf_gas.S" -.globl jump_fcontext -.hidden jump_fcontext -#if _CALL_ELF == 2 -	.text -	.align 2 -jump_fcontext: -        addis   %r2, %r12, .TOC.-jump_fcontext@ha -        addi    %r2, %r2, .TOC.-jump_fcontext@l -        .localentry jump_fcontext, . - jump_fcontext -#else -	.section ".opd","aw" -	.align 3 -jump_fcontext: -# ifdef _CALL_LINUX -        .quad   .L.jump_fcontext,.TOC.@tocbase,0 -        .type   jump_fcontext,@function -        .text -        .align 2 -.L.jump_fcontext: -# else -        .hidden .jump_fcontext -        .globl  .jump_fcontext -        .quad   .jump_fcontext,.TOC.@tocbase,0 -        .size   jump_fcontext,24 -        .type   .jump_fcontext,@function -        .text -        .align 2 -.jump_fcontext: -# endif -#endif -    # reserve space on stack -    subi  %r1, %r1, 184 - -#if _CALL_ELF != 2 -    std  %r2,  0(%r1)  # save TOC -#endif -    std  %r14, 8(%r1)  # save R14 -    std  %r15, 16(%r1)  # save R15 -    std  %r16, 24(%r1)  # save R16 -    std  %r17, 32(%r1)  # save R17 -    std  %r18, 40(%r1)  # save R18 -    std  %r19, 48(%r1)  # save R19 -    std  %r20, 56(%r1)  # save R20 -    std  %r21, 64(%r1)  # save R21 -    std  %r22, 72(%r1)  # save R22 -    std  %r23, 80(%r1)  # save R23 -    std  %r24, 88(%r1)  # save R24 -    std  %r25, 96(%r1)  # save R25 -    std  %r26, 104(%r1)  # save R26 -    std  %r27, 112(%r1)  # save R27 -    std  %r28, 120(%r1)  # save R28 -    std  %r29, 128(%r1)  # save R29 -    std  %r30, 136(%r1)  # save R30 -    std  %r31, 144(%r1)  # save R31 -#if _CALL_ELF != 2 -    std  %r3,  152(%r1)  # save hidden -#endif - -    # save CR -    mfcr  %r0 -    std   %r0, 160(%r1) -    # save LR -    mflr  %r0 -    std   %r0, 168(%r1) -    # save LR as PC -    std   %r0, 176(%r1) - -    # store RSP (pointing to context-data) in R6 -    mr  %r6, %r1 - -#if _CALL_ELF == 2 -    # restore RSP (pointing to context-data) from R3 -    mr  %r1, %r3 -#else -    # restore RSP (pointing to context-data) from R4 -    mr  %r1, %r4 - -    ld  %r2,  0(%r1)  # restore TOC -#endif -    ld  %r14, 8(%r1)  # restore R14 -    ld  %r15, 16(%r1)  # restore R15 -    ld  %r16, 24(%r1)  # restore R16 -    ld  %r17, 32(%r1)  # restore R17 -    ld  %r18, 40(%r1)  # restore R18 -    ld  %r19, 48(%r1)  # restore R19 -    ld  %r20, 56(%r1)  # restore R20 -    ld  %r21, 64(%r1)  # restore R21 -    ld  %r22, 72(%r1)  # restore R22 -    ld  %r23, 80(%r1)  # restore R23 -    ld  %r24, 88(%r1)  # restore R24 -    ld  %r25, 96(%r1)  # restore R25 -    ld  %r26, 104(%r1)  # restore R26 -    ld  %r27, 112(%r1)  # restore R27 -    ld  %r28, 120(%r1)  # restore R28 -    ld  %r29, 128(%r1)  # restore R29 -    ld  %r30, 136(%r1)  # restore R30 -    ld  %r31, 144(%r1)  # restore R31 -#if _CALL_ELF != 2 -    ld  %r3,  152(%r1)  # restore hidden -#endif - -    # restore CR -    ld  %r0, 160(%r1) -    mtcr  %r0 -    # restore LR -    ld  %r0, 168(%r1) -    mtlr  %r0 - -    # load PC -    ld  %r12, 176(%r1) -    # restore CTR -    mtctr  %r12 - -    # adjust stack -    addi  %r1, %r1, 184 - -#if _CALL_ELF == 2 -    # copy transfer_t into transfer_fn arg registers -    mr  %r3, %r6 -    # arg pointer already in %r4 - -    # jump to context -    bctr -	.size jump_fcontext, .-jump_fcontext -#else -    # zero in r3 indicates first jump to context-function -    cmpdi %r3, 0 -    beq use_entry_arg - -    # return transfer_t -    std  %r6, 0(%r3) -    std  %r5, 8(%r3) - -    # jump to context -    bctr - -use_entry_arg: -    # copy transfer_t into transfer_fn arg registers -    mr  %r3, %r6 -    mr  %r4, %r5 - -    # jump to context -    bctr -# ifdef _CALL_LINUX -	.size .jump_fcontext, .-.L.jump_fcontext -# else -	.size .jump_fcontext, .-.jump_fcontext -# endif -#endif - - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_macho_gas.S deleted file mode 100644 index e4d8944b563..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_macho_gas.S +++ /dev/null @@ -1,165 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    R13    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  |    FCTX   |    DATA   |           |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.text -.align 2 -.private_extern _jump_fcontext -.globl _jump_fcontext - -_jump_fcontext: -    ; reserve space on stack -    subi  r1, r1, 184 - -    std  r14, 8(r1)  ; save R14 -    std  r15, 16(r1)  ; save R15 -    std  r16, 24(r1)  ; save R16 -    std  r17, 32(r1)  ; save R17 -    std  r18, 40(r1)  ; save R18 -    std  r19, 48(r1)  ; save R19 -    std  r20, 56(r1)  ; save R20 -    std  r21, 64(r1)  ; save R21 -    std  r22, 72(r1)  ; save R22 -    std  r23, 80(r1)  ; save R23 -    std  r24, 88(r1)  ; save R24 -    std  r25, 96(r1)  ; save R25 -    std  r26, 104(r1)  ; save R26 -    std  r27, 112(r1)  ; save R27 -    std  r28, 120(r1)  ; save R28 -    std  r29, 128(r1)  ; save R29 -    std  r30, 136(r1)  ; save R30 -    std  r31, 144(r1)  ; save R31 -    std  r3,  152(r1)  ; save hidden - -    ; save CR -    mfcr  r0 -    std   r0, 160(r1) -    ; save LR -    mflr  r0 -    std   r0, 168(r1) -    ; save LR as PC -    std   r0, 176(r1) - -    ; store RSP (pointing to context-data) in R6 -    mr  r6, r1 - -    ; restore RSP (pointing to context-data) from R4 -    mr  r1, r4 - -    ld  r14, 8(r1)  ; restore R14 -    ld  r15, 16(r1)  ; restore R15 -    ld  r16, 24(r1)  ; restore R16 -    ld  r17, 32(r1)  ; restore R17 -    ld  r18, 40(r1)  ; restore R18 -    ld  r19, 48(r1)  ; restore R19 -    ld  r20, 56(r1)  ; restore R20 -    ld  r21, 64(r1)  ; restore R21 -    ld  r22, 72(r1)  ; restore R22 -    ld  r23, 80(r1)  ; restore R23 -    ld  r24, 88(r1)  ; restore R24 -    ld  r25, 96(r1)  ; restore R25 -    ld  r26, 104(r1)  ; restore R26 -    ld  r27, 112(r1)  ; restore R27 -    ld  r28, 120(r1)  ; restore R28 -    ld  r29, 128(r1)  ; restore R29 -    ld  r30, 136(r1)  ; restore R30 -    ld  r31, 144(r1)  ; restore R31 -    ld  r3,  152(r1)  ; restore hidden - -    ; restore CR -    ld  r0, 160(r1) -    mtcr  r0 -    ; restore LR -    ld  r0, 168(r1) -    mtlr  r0 - -    ; load PC -    ld  r12, 176(r1) -    ; restore CTR -    mtctr  r12 - -    ; adjust stack -    addi  r1, r1, 184 - -    ; zero in r3 indicates first jump to context-function -    cmpdi r3, 0 -    beq use_entry_arg - -    ; return transfer_t -    std  r6, 0(r3) -    std  r5, 8(r3) - -    ; jump to context -    bctr - -use_entry_arg: -    ; copy transfer_t into transfer_fn arg registers -    mr  r3, r6 -    mr  r4, r5 - -    ; jump to context -    bctr diff --git a/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_xcoff_gas.S b/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_xcoff_gas.S deleted file mode 100644 index f835d2a76a6..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_ppc64_sysv_xcoff_gas.S +++ /dev/null @@ -1,173 +0,0 @@ - -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    TOC    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | TOC saved |    FCTX   |    DATA   |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -    .file "jump_ppc64_sysv_xcoff_gas.S" -    .toc -    .csect .text[PR], 5 -    .align 2 -    .globl  jump_fcontext[DS] -    .globl .jump_fcontext -    .csect  jump_fcontext[DS], 3 -jump_fcontext: -    .llong .jump_fcontext[PR], TOC[tc0], 0 -    .csect .text[PR], 5 -.jump_fcontext: -    # reserve space on stack -    subi  1, 1, 184 - -    std  2, 0(1)  # save TOC -    std  14, 8(1)  # save R14 -    std  15, 16(1)  # save R15 -    std  16, 24(1)  # save R16 -    std  17, 32(1)  # save R17 -    std  18, 40(1)  # save R18 -    std  19, 48(1)  # save R19 -    std  20, 56(1)  # save R20 -    std  21, 64(1)  # save R21 -    std  22, 72(1)  # save R22 -    std  23, 80(1)  # save R23 -    std  24, 88(1)  # save R24 -    std  25, 96(1)  # save R25 -    std  26, 104(1)  # save R26 -    std  27, 112(1)  # save R27 -    std  28, 120(1)  # save R28 -    std  29, 128(1)  # save R29 -    std  30, 136(1)  # save R30 -    std  31, 144(1)  # save R31 -    std  3,  152(1)  # save hidden - -    # save CR -    mfcr  0 -    std  0, 160(1) -    # save LR -    mflr  0 -    std  0, 168(1) -    # save LR as PC -    std  0, 176(1) - -    # store RSP (pointing to context-data) in R6 -    mr  6, 1 - -    # restore RSP (pointing to context-data) from R4 -    mr  1, 4 - -    ld  2, 0(1)  # restore TOC -    ld  14, 8(1)  # restore R14 -    ld  15, 16(1)  # restore R15 -    ld  16, 24(1)  # restore R16 -    ld  17, 32(1)  # restore R17 -    ld  18, 40(1)  # restore R18 -    ld  19, 48(1)  # restore R19 -    ld  20, 56(1)  # restore R20 -    ld  21, 64(1)  # restore R21 -    ld  22, 72(1)  # restore R22 -    ld  23, 80(1)  # restore R23 -    ld  24, 88(1)  # restore R24 -    ld  25, 96(1)  # restore R25 -    ld  26, 104(1)  # restore R26 -    ld  27, 112(1)  # restore R27 -    ld  28, 120(1)  # restore R28 -    ld  29, 128(1)  # restore R29 -    ld  30, 136(1)  # restore R30 -    ld  31, 144(1)  # restore R31 -    ld  3,  152(1)  # restore hidden - -    # restore CR -    ld  0, 160(1) -    mtcr  0 -    # restore LR -    ld  0, 168(1) -    mtlr  0 - -    # load PC -    ld  0, 176(1) -    # restore CTR -    mtctr  0 - -    # adjust stack -    addi  1, 1, 184 - -    # zero in r3 indicates first jump to context-function -    cmpdi 3, 0 -    beq use_entry_arg - -    # return transfer_t -    std  6, 0(3) -    std  5, 8(3) - -    # jump to context -    bctr - -use_entry_arg: -    # copy transfer_t into transfer_fn arg registers -    mr  3, 6 -    mr  4, 5 - -    # jump to context -    bctr diff --git a/contrib/restricted/boost/context/src/asm/jump_riscv64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_riscv64_sysv_elf_gas.S deleted file mode 100644 index 879eb7efee6..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_riscv64_sysv_elf_gas.S +++ /dev/null @@ -1,151 +0,0 @@ -/* -   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) -*/ -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  | 0x0 | 0x4 | 0x8 | 0xc | 0x10| 0x14| 0x18| 0x1c|  * - *  -------------------------------------------------  * - *  |    fs0    |    fs1    |    fs2    |    fs3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  | 0x20| 0x24| 0x28| 0x2c| 0x30| 0x34| 0x38| 0x3c|  * - *  -------------------------------------------------  * - *  |    fs4    |    fs5    |    fs6    |    fs7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  | 0x40| 0x44| 0x48| 0x4c| 0x50| 0x54| 0x58| 0x5c|  * - *  -------------------------------------------------  * - *  |    fs8    |    fs9    |    fs10   |    fs11   |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  | 0x60| 0x64| 0x68| 0x6c| 0x70| 0x74| 0x78| 0x7c|  * - *  -------------------------------------------------  * - *  |    s0     |    s1     |    s2     |    s3     |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 0x80| 0x84| 0x88| 0x8c| 0x90| 0x94| 0x98| 0x9c|  * - *  -------------------------------------------------  * - *  |    s4     |    s5     |    s6     |     s7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 | 43  |  44 | 45  |  46 | 47  |  * - *  -------------------------------------------------  * - *  | 0xa0| 0xa4| 0xa8| 0xac| 0xb0| 0xb4| 0xb8| 0xbc|  * - *  -------------------------------------------------  * - *  |     s8    |     s9    |    s10    |    s11    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 | 51  |     |     |     |     |  * - *  -------------------------------------------------  * - *  | 0xc0| 0xc4| 0xc8| 0xcc|     |     |     |     |  * - *  -------------------------------------------------  * - *  |     ra    |     pc    |           |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.file "jump_riscv64_sysv_elf_gas.S" -.text -.align  1 -.global jump_fcontext -.hidden jump_fcontext -.type   jump_fcontext, %function -jump_fcontext: -    # prepare stack for GP + FPU -    addi  sp, sp, -0xd0 - -    # save fs0 - fs11 -    fsd  fs0, 0x00(sp) -    fsd  fs1, 0x08(sp) -    fsd  fs2, 0x10(sp) -    fsd  fs3, 0x18(sp) -    fsd  fs4, 0x20(sp) -    fsd  fs5, 0x28(sp) -    fsd  fs6, 0x30(sp) -    fsd  fs7, 0x38(sp) -    fsd  fs8, 0x40(sp) -    fsd  fs9, 0x48(sp) -    fsd  fs10, 0x50(sp) -    fsd  fs11, 0x58(sp) - -    # save s0-s11, ra -    sd  s0, 0x60(sp) -    sd  s1, 0x68(sp) -    sd  s2, 0x70(sp) -    sd  s3, 0x78(sp) -    sd  s4, 0x80(sp) -    sd  s5, 0x88(sp) -    sd  s6, 0x90(sp) -    sd  s7, 0x98(sp) -    sd  s8, 0xa0(sp) -    sd  s9, 0xa8(sp) -    sd  s10, 0xb0(sp) -    sd  s11, 0xb8(sp) -    sd  ra, 0xc0(sp) - -    # save RA as PC -    sd  ra, 0xc8(sp) - -    # store SP (pointing to context-data) in A2 -    mv  a2, sp - -    # restore SP (pointing to context-data) from A0 -    mv  sp, a0 - -    # load fs0 - fs11 -    fld  fs0, 0x00(sp) -    fld  fs1, 0x08(sp) -    fld  fs2, 0x10(sp) -    fld  fs3, 0x18(sp) -    fld  fs4, 0x20(sp) -    fld  fs5, 0x28(sp) -    fld  fs6, 0x30(sp) -    fld  fs7, 0x38(sp) -    fld  fs8, 0x40(sp) -    fld  fs9, 0x48(sp) -    fld  fs10, 0x50(sp) -    fld  fs11, 0x58(sp) - -    # load s0-s11,ra -    ld  s0, 0x60(sp) -    ld  s1, 0x68(sp) -    ld  s2, 0x70(sp) -    ld  s3, 0x78(sp) -    ld  s4, 0x80(sp) -    ld  s5, 0x88(sp) -    ld  s6, 0x90(sp) -    ld  s7, 0x98(sp) -    ld  s8, 0xa0(sp) -    ld  s9, 0xa8(sp) -    ld  s10, 0xb0(sp) -    ld  s11, 0xb8(sp) -    ld  ra, 0xc0(sp) - -    # return transfer_t from jump -    # pass transfer_t as first arg in context function -    # a0 == FCTX, a1 == DATA -    mv a0, a2 - -    # load pc -    ld  a2, 0xc8(sp) - -    # restore stack from GP + FPU -    addi  sp, sp, 0xd0 - -    jr a2 -.size   jump_fcontext,.-jump_fcontext -# Mark that we don't need executable stack. -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_s390x_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_s390x_sysv_elf_gas.S deleted file mode 100644 index 59bc58bf370..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_s390x_sysv_elf_gas.S +++ /dev/null @@ -1,161 +0,0 @@ -/******************************************************* - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |    24     |  * - *  -------------------------------------------------  * - *  |   t.fctx  |   t.data  |    r2     |    r6     |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |     r7    |     r8    |     r9    |    r10    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |     72    |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    r11    |    r12    |    r13    |    r14    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 | 29  |  30 |  31 |  * - *  -------------------------------------------------  * - *  |     96    |    104    |    112    |    120    |  * - *  -------------------------------------------------  * - *  |     f8    |     f9    |    f10    |    f11    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  |    128    |    136    |    144    |    152    |  * - *  -------------------------------------------------  * - *  |    f12    |    f13    |    f14    |    f15    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  |    160    |    168    |    176    |           |  * - *  -------------------------------------------------  * - *  |    fpc    |     pc    |           |           |  * - *  -------------------------------------------------  * - *******************************************************/ - -.text -.align	8 -.global	jump_fcontext -.hidden jump_fcontext -.type	jump_fcontext, @function - -#define ARG_OFFSET         0 -#define GR_OFFSET          16 -#define R14_OFFSET         88 -#define FP_OFFSET          96 -#define FPC_OFFSET         160 -#define PC_OFFSET          168 -#define CONTEXT_SIZE       176 - -#define REG_SAVE_AREA_SIZE 160 - -/* - -typedef void*   fcontext_t; - -struct transfer_t { -   fcontext_t  fctx; -   void    *   data; -}; - -transfer_t jump_fcontext( fcontext_t const to, -			  void * data); - -Incoming args -r2 - Hidden argument to the location where the return transfer_t needs to be returned -r3 - Context we want to switch to -r4 - Data pointer - -*/ - -jump_fcontext: -	.machine "z10" -	/* Reserve stack space to store the current context.  */ -	aghi	%r15,-CONTEXT_SIZE - -	/* Save the argument register holding the location of the return value.  */ -	stg	%r2,GR_OFFSET(%r15) - -	/* Save the call-saved general purpose registers.  */ -	stmg	%r6,%r14,GR_OFFSET+8(%r15) - -	/* Save call-saved floating point registers.  */ -	std	%f8,FP_OFFSET(%r15) -	std	%f9,FP_OFFSET+8(%r15) -	std	%f10,FP_OFFSET+16(%r15) -	std	%f11,FP_OFFSET+24(%r15) -	std	%f12,FP_OFFSET+32(%r15) -	std	%f13,FP_OFFSET+40(%r15) -	std	%f14,FP_OFFSET+48(%r15) -	std	%f15,FP_OFFSET+56(%r15) - -	/* Save the return address as current pc.  */ -	stg	%r14,PC_OFFSET(%r15) - -	/* Save the floating point control register.  */ -	stfpc	FPC_OFFSET(%r15) - -	/* Backup the stack pointer pointing to the old context-data into r1.  */ -	lgr	 %r1,%r15 - -	/* Load the new context pointer as stack pointer.  */ -	lgr	%r15,%r3 - -	/* Restore the call-saved GPRs from the new context.  */ -	lmg	%r6,%r14,GR_OFFSET+8(%r15) - -	/* Restore call-saved floating point registers.  */ -	ld	%f8,FP_OFFSET(%r15) -	ld	%f9,FP_OFFSET+8(%r15) -	ld	%f10,FP_OFFSET+16(%r15) -	ld	%f11,FP_OFFSET+24(%r15) -	ld	%f12,FP_OFFSET+32(%r15) -	ld	%f13,FP_OFFSET+40(%r15) -	ld	%f14,FP_OFFSET+48(%r15) -	ld	%f15,FP_OFFSET+56(%r15) - -	/* Load the floating point control register.  */ -	lfpc	FPC_OFFSET(%r15) - -	/* Restore PC - the location where we will jump to at the end.  */ -	lg	%r5,PC_OFFSET(%r15) - -	ltg	%r2,GR_OFFSET(%r15) -	jnz	use_return_slot - -	/* We're restoring a context created by make_fcontext. -	   This is going to be the argument of the entry point -	   of the fiber. We're placing it on top of the ABI -	   defined register save area of the fiber's own stack. */ -	la	%r2,REG_SAVE_AREA_SIZE(%r15) - -	/* REG_SAVE_AREA_SIZE + sizeof(transfer_t) */ -	aghi	%r15,-(REG_SAVE_AREA_SIZE+16) - -use_return_slot: -	/* Save the two fields in transfer_t.  When calling a -	   make_fcontext function this becomes the function argument of -	   the target function, otherwise it will be the return value of -	   jump_fcontext.  */ -	stg	%r1,0(%r2) -	stg	%r4,8(%r2) - -	/* Free the restored context.  */ -	aghi	%r15,CONTEXT_SIZE - -	/* Jump to the PC loaded from the new context.  */ -	br	%r5 - - -.size   jump_fcontext,.-jump_fcontext -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/jump_sparc64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/jump_sparc64_sysv_elf_gas.S deleted file mode 100644 index 61101fb1f62..00000000000 --- a/contrib/restricted/boost/context/src/asm/jump_sparc64_sysv_elf_gas.S +++ /dev/null @@ -1,51 +0,0 @@ -/* -       Copyright Claudio Jeker 2024 -   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) -*/ - -/* - * typedef void*	fcontext_t; - * - * struct transfer_t { - *	fcontext_t	fctx; - *	void	*	data; - * }; - * - * transfer_t jump_fcontext(fcontext_t const to, void *vp); - */ -#define CC64FSZ 176 -#define BIAS 2047 -#define SP 128 -#define I7 136 - -.file "jump_sparc64_sysv_elf_gas.S" -.text -.align  4 -.global jump_fcontext -.type   jump_fcontext, %function -jump_fcontext: -	# prepare stack -	save	%sp, -CC64FSZ, %sp - -	# store framepointer and return address in slots reserved -	# for arguments -	stx %fp, [%sp + BIAS + SP] -	stx %i7, [%sp + BIAS + I7] -	mov %sp, %o0 -	# force flush register windows to stack and with that save context -	flushw -	# get SP (pointing to new context-data) from %i0 param -	mov %i0, %sp -	# load framepointer and return address from context -	ldx [%sp + BIAS + SP], %fp -	ldx [%sp + BIAS + I7], %i7 - -	ret -	 restore %o0, %g0, %o0 -	# restore old %sp (pointing to old context-data) in %o0 -	# *data stored in %o1 was not modified -.size	jump_fcontext,.-jump_fcontext -# Mark that we don't need executable stack. -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_combined_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/make_combined_sysv_macho_gas.S deleted file mode 100644 index b22fa7ebe92..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_combined_sysv_macho_gas.S +++ /dev/null @@ -1,24 +0,0 @@ -/* -            Copyright Sergue E. Leontiev 2013. -   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) -*/ - -// Stub file for universal binary - -#if defined(__i386__) -    #include "make_i386_sysv_macho_gas.S" -#elif defined(__x86_64__) -    #include "make_x86_64_sysv_macho_gas.S" -#elif defined(__ppc__) -    #include "make_ppc32_sysv_macho_gas.S" -#elif defined(__ppc64__) -    #include "make_ppc64_sysv_macho_gas.S" -#elif defined(__arm__) -    #include "make_arm_aapcs_macho_gas.S" -#elif defined(__arm64__) -    #include "make_arm64_aapcs_macho_gas.S" -#else -    #error "No arch's" -#endif diff --git a/contrib/restricted/boost/context/src/asm/make_loongarch64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_loongarch64_sysv_elf_gas.S deleted file mode 100644 index a067baded56..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_loongarch64_sysv_elf_gas.S +++ /dev/null @@ -1,73 +0,0 @@ -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |     24    |  * - *  -------------------------------------------------  * - *  |    FS0    |    FS1    |    FS2    |    FS3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |    FS4    |    FS5    |    FS6    |    FS7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |    72     |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    S0     |    S1     |     S2    |     S3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    S4     |    S5     |     S6    |     S7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    S8     |    FP     |     RA    |     PC    |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "make_loongarch64_sysv_elf_gas.S" -.text -.globl make_fcontext -.hidden make_fcontext -.align 2 -.type make_fcontext,@function -make_fcontext: -    # shift address in A0 to lower 16 byte boundary -    bstrins.d $a0, $zero, 3, 0 - -    # reserve space for context-data on context-stack -    addi.d  $a0, $a0, -160 - -    # third arg of make_fcontext() == address of context-function -    st.d  $a2, $a0, 152 - -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    la.local  $a4, finish -    st.d  $a4, $a0, 144 - -    # return pointer to context-data -    jr  $ra - -finish: -    # exit code is zero -    li.d  $a0, 0 -    # call _exit(0) -    b  %plt(_exit) - -.size make_fcontext, .-make_fcontext -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_mips32_o32_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_mips32_o32_elf_gas.S deleted file mode 100644 index 54742f3a8be..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_mips32_o32_elf_gas.S +++ /dev/null @@ -1,98 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    F20    |    F22    |    F24    |    F26    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    F28    |    F30    |  S0 |  S1 |  S2 |  S3 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |  S4 |  S5 |  S6 |  S7 |  FP |hiddn|  RA |  PC |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |       ABI ARGS        |  GP | FCTX| DATA|     |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "make_mips32_o32_elf_gas.S" -.text -.globl make_fcontext -.hidden make_fcontext -.align 2 -.type make_fcontext,@function -.ent make_fcontext -make_fcontext: -#ifdef __PIC__ -.set    noreorder -.cpload $t9 -.set    reorder -#endif -    # shift address in A0 to lower 16 byte boundary -    li $v1, -16 # 0xfffffffffffffff0 -    and $v0, $v1, $a0 - -    # reserve space for context-data on context-stack -    #  includes an extra 32 bytes for: -    #  - 16-byte incoming argument area required by mips ABI used when -    #    jump_context calls the initial function -    #  - 4 bytes to save our GP register used in finish -    #  - 8 bytes to as space for transfer_t returned to finish -    #  - 4 bytes for alignment -    addiu $v0, $v0, -128 - -    # third arg of make_fcontext() == address of context-function -    sw  $a2, 92($v0) -    # save global pointer in context-data -    sw  $gp, 112($v0) - -    # compute address of returned transfer_t -    addiu $t0, $v0, 116 -    sw  $t0, 84($v0) - -    # compute abs address of label finish -    la  $t9, finish -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    sw  $t9, 88($v0) - -    jr  $ra # return pointer to context-data - -finish: -    # reload our gp register (needed for la) -    lw $gp, 16($sp) - -    # call _exit(0) -    #  the previous function should have left the 16 bytes incoming argument -    #  area on the stack which we reuse for calling _exit -    la $t9, _exit -    move $a0, $zero -    jr $t9 -.end make_fcontext -.size make_fcontext, .-make_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_mips64_n64_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_mips64_n64_elf_gas.S deleted file mode 100644 index 40f29a55c20..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_mips64_n64_elf_gas.S +++ /dev/null @@ -1,97 +0,0 @@ -/* -            Copyright Jiaxun Yang 2018. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |     24    |  * - *  -------------------------------------------------  * - *  |    F24    |    F25    |    F26    |    F27    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |    F28    |    F29    |    F30    |    F31    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |    72     |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    S0     |    S1     |     S2    |     S3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    S4     |    S5     |     S6    |     S7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    FP     |    GP     |     RA    |     PC    |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "make_mips64_n64_elf_gas.S" -.text -.globl make_fcontext -.hidden make_fcontext -.align 3 -.type make_fcontext,@function -.ent make_fcontext -make_fcontext: -#ifdef __PIC__ -.set    noreorder -.cpload $t9 -.set    reorder -#endif -    # shift address in A0 to lower 16 byte boundary -    li $v1, 0xfffffffffffffff0 -    and $v0, $v1, $a0 - -    # reserve space for context-data on context-stack -    daddiu $v0, $v0, -160 - -    # third arg of make_fcontext() == address of context-function -    sd  $a2, 152($v0) -    # save global pointer in context-data -    sd  $gp, 136($v0) - -    # psudo instruction compute abs address of label finish based on GP -    dla  $t9, finish - -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    sd  $t9, 144($v0) - -    jr  $ra # return pointer to context-data - -finish: -    # reload our gp register (needed for la) -    daddiu $t0, $sp, -160 -    ld $gp, 136($t0) - -    # call _exit(0) -    #  the previous function should have left the 16 bytes incoming argument -    #  area on the stack which we reuse for calling _exit -    dla $t9, _exit -    move $a0, $zero -    jr $t9 -.end make_fcontext -.size make_fcontext, .-make_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_ppc32_ppc64_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc32_ppc64_sysv_macho_gas.S deleted file mode 100644 index 52e72209337..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc32_ppc64_sysv_macho_gas.S +++ /dev/null @@ -1,16 +0,0 @@ -/* -            Copyright Sergue E. Leontiev 2013. -   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) -*/ - -// Stub file for universal binary - -#if defined(__ppc__) -    #include "make_ppc32_sysv_macho_gas.S" -#elif defined(__ppc64__) -    #include "make_ppc64_sysv_macho_gas.S" -#else -    #error "No arch's" -#endif diff --git a/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_elf_gas.S deleted file mode 100644 index 0dd77719354..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_elf_gas.S +++ /dev/null @@ -1,147 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |bchai|hiddn|   fpscr   |  PC |  CR | R14 | R15 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  | R16 | R17 | R18 | R19 | R20 | R21 | R22 | R23 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  | R24 | R25 | R26 | R27 | R28 | R29 | R30 | R31 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  ------------------------|------------              * - *  | 224 | 228 | 232 | 236 | 240 | 244 |              * - *  ------------------------|------------              * - *  |    F30    |    F31    |bchai|  LR |              * - *  ------------------------|------------              * - *                                                     * - *******************************************************/ - -.file "make_ppc32_sysv_elf_gas.S" -.text -.globl make_fcontext -.hidden make_fcontext -.align 2 -.type make_fcontext,@function -make_fcontext: -    # save return address into R6 -    mflr  %r6 - -    # first arg of make_fcontext() == top address of context-function -    # shift address in R3 to lower 16 byte boundary -    clrrwi  %r3, %r3, 4 - -    # reserve space on context-stack, including 16 bytes of linkage -    # and parameter area + 240 bytes of context-data (R1 % 16 == 0) -    subi  %r3, %r3, 16 + 240 - -    # third arg of make_fcontext() == address of context-function -#ifdef __linux__ -    # save context-function as PC -    stw  %r5, 16(%r3) -#else -    # save context-function for trampoline -    stw  %r5, 248(%r3) -#endif - -    # set back-chain to zero -    li   %r0, 0 -    stw  %r0, 240(%r3) - -    # copy FPSCR to new context -    mffs  %f0 -    stfd  %f0, 8(%r3) - -#ifdef __linux__ -    # set hidden pointer for returning transfer_t -    la    %r0, 248(%r3) -    stw   %r0, 4(%r3) -#endif - -    # load address of label 1 into R4 -    bl  1f -1:  mflr  %r4 -#ifndef __linux__ -    # compute abs address of trampoline, use as PC -    addi  %r7, %r4, trampoline - 1b -    stw   %r7, 16(%r3) -#endif -    # compute abs address of label finish -    addi  %r4, %r4, finish - 1b -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    stw  %r4, 244(%r3) - -    # restore return address from R6 -    mtlr  %r6 - -    blr  # return pointer to context-data - -#ifndef __linux__ -trampoline: -    # On systems other than Linux, jump_fcontext is returning the -    # transfer_t in R3:R4, but we need to pass transfer_t * R3 to -    # our context-function. -    lwz   %r0, 8(%r1)   # address of context-function -    mtctr %r0 -    stw   %r3, 8(%r1) -    stw   %r4, 12(%r1) -    la    %r3, 8(%r1)   # address of transfer_t -    bctr -#endif - -finish: -    # Use the secure PLT for _exit(0).  If we use the insecure BSS PLT -    # here, then the linker may use the insecure BSS PLT even if the -    # C++ compiler wanted the secure PLT. - -    # set R30 for secure PLT, large model -    bl     2f -2:  mflr   %r30 -    addis  %r30, %r30, .Ltoc - 2b@ha -    addi   %r30, %r30, .Ltoc - 2b@l - -    # call _exit(0) with special addend 0x8000 for large model -    li  %r3, 0 -    bl  _exit + 0x8000@plt -.size make_fcontext, .-make_fcontext - -/* Provide the GOT pointer for secure PLT, large model. */ -.section .got2,"aw" -.Ltoc = . + 0x8000 - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_macho_gas.S deleted file mode 100644 index e7b0c7a2ae0..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_macho_gas.S +++ /dev/null @@ -1,155 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/****************************************************** - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F30    |    F31    |   fpscr   | R13 | R14 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  | R15 | R16 | R17 | R18 | R19 | R20 | R21 | R22 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  | R23 | R24 | R25 | R26 | R27 | R28 | R29 | R30 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | R31 |hiddn|  CR |  LR |  PC |bchai|linkr| FCTX|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |                                         |  * - *  -------------------------------------------------  * - *  | 256 |                                         |  * - *  -------------------------------------------------  * - *  | DATA|                                         |  *  - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.text -.private_extern _make_fcontext -.globl _make_fcontext -.align 2 -_make_fcontext: -    ; save return address into R6 -    mflr  r6 - -    ; first arg of make_fcontext() == top address of context-function -    ; shift address in R3 to lower 16 byte boundary -    clrrwi  r3, r3, 4 - -    ; reserve space for context-data on context-stack -    ; including 64 byte of linkage + parameter area (R1 % 16 == 0) -    subi  r3, r3, 336 - -    ; third arg of make_fcontext() == address of context-function -    ; store as trampoline's R31 -    stw  r5, 224(r3) - -    ; set back-chain to zero -    li   r0, 0 -    stw  r0, 244(r3) - -    mffs  f0  ; load FPSCR -    stfd  f0, 144(r3)  ; save FPSCR - -    ; compute address of returned transfer_t -    addi  r0, r3, 252 -    mr    r4, r0  -    stw   r4, 228(r3)  - -    ; load LR -    mflr  r0 -    ; jump to label 1 -    bcl  20, 31, L1 -L1: -    ; load LR into R4 -    mflr  r4 -    ; compute abs address of trampoline, use as PC -    addi  r5, r4, lo16(Ltrampoline - L1) -    stw  r5, 240(r3) -    ; compute abs address of label finish -    addi  r4, r4, lo16(Lfinish - L1) -    ; restore LR -    mtlr  r0 -    ; save address of finish as return-address for context-function -    ; will be entered after context-function returns -    stw  r4, 236(r3) - -    ; restore return address from R6 -    mtlr  r6 - -    blr  ; return pointer to context-data - -Ltrampoline: -    ; We get R31 = context-function, R3 = address of transfer_t, -    ; but we need to pass R3:R4 = transfer_t. -    mtctr  r31 -    lwz  r4, 4(r3) -    lwz  r3, 0(r3) -    bctr - -Lfinish: -    ; load address of _exit into CTR -    bcl  20, 31, L2 -L2: -    mflr  r4 -    addis  r4, r4, ha16(Lexitp - L2) -    lwz  r4, lo16(Lexitp - L2)(r4) -    mtctr  r4 -    ; exit code is zero -    li  r3, 0 -    ; exit application -    bctr - -.const_data -.align 2 -Lexitp: -    .long  __exit diff --git a/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_xcoff_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_xcoff_gas.S deleted file mode 100644 index e803757fa35..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc32_sysv_xcoff_gas.S +++ /dev/null @@ -1,125 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |bchai|  CR | LR  |compl| link| TOC | R14 | R15 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  | R16 | R17 | R18 | R19 | R20 | R21 | R22 | R23 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  | R24 | R25 | R26 | R27 | R28 | R29 | R30 | R31 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  |    F30    |    F31    |  PC |hiddn|  fpscr    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 256 | 260 | 264 | 268 | 272 | 276 | 280 | 284 |  * - *  -------------------------------------------------  * - *  |bchai|savLR|savLR|compl| link|svTOC| FCTX| DATA|  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ -    .file "make_ppc32_sysv_xcoff_xas.S" -    .toc -    .csect .text[PR] -    .align 2 -    .globl  make_fcontext[DS] -    .globl .make_fcontext -    .csect  make_fcontext[DS] -make_fcontext: -    .long .make_fcontext[PR], TOC[tc0], 0 -    .csect .text[PR], 5 -.make_fcontext: -    # save return address into R6 -    mflr  6 - -    # first arg of make_fcontext() == top address of context-function -    # shift address in R3 to lower 16 byte boundary -    clrrwi  3, 3, 4 - -    # reserve space for context-data on context-stack -    # including 32 byte of linkage + parameter area (R1 % 16 == 0) -    subi  3, 3, 288 - -    # third arg of make_fcontext() == address of context-function descriptor -    lwz   4, 0(5) -    stw  4, 240(3) -    # save TOC of context-function -    lwz   4, 4(5) -    stw  4, 20(3) - -    # set back-chain to zero -    li   0, 0 -    stw  0, 256(3) - -    # zero in r3 indicates first jump to context-function -    std  0, 244(3) - -    # load LR -    mflr  0 -    # jump to label 1 -    bl  .Label -.Label: -    # load LR into R4 -    mflr  4 -    # compute abs address of label .L_finish -    addi  4, 4, .L_finish - .Label -    # restore LR -    mtlr  0 -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    stw  4, 8(3) - -    # restore return address from R6 -    mtlr  6 - -    blr  # return pointer to context-data - -.L_finish: -    # save return address into R0 -    mflr  0 -    # save return address on stack, set up stack frame -    stw  0, 4(1) -    # allocate stack space, R1 % 16 == 0 -    stwu  1, -16(1) - -    # exit code is zero -    li  3, 0 -    # exit application -    bl  ._exit -    nop diff --git a/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_elf_gas.S deleted file mode 100644 index f513d3639ea..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_elf_gas.S +++ /dev/null @@ -1,178 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    TOC    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | TOC saved |    FCTX   |    DATA   |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.file "make_ppc64_sysv_elf_gas.S" -.globl make_fcontext -.hidden make_fcontext -#if _CALL_ELF == 2 -	.text -	.align 2 -make_fcontext: -	addis	%r2, %r12, .TOC.-make_fcontext@ha -	addi	%r2, %r2, .TOC.-make_fcontext@l -	.localentry make_fcontext, . - make_fcontext -#else -	.section ".opd","aw" -	.align 3 -make_fcontext: -# ifdef _CALL_LINUX -	.quad	.L.make_fcontext,.TOC.@tocbase,0 -	.type	make_fcontext,@function -	.text -	.align 2 -.L.make_fcontext: -# else -	.hidden	.make_fcontext -	.globl	.make_fcontext -	.quad	.make_fcontext,.TOC.@tocbase,0 -	.size	make_fcontext,24 -	.type	.make_fcontext,@function -	.text -	.align 2 -.make_fcontext: -# endif -#endif -    # save return address into R6 -    mflr  %r6 - -    # first arg of make_fcontext() == top address of context-stack -    # shift address in R3 to lower 16 byte boundary -    clrrdi  %r3, %r3, 4 - -    # reserve space for context-data on context-stack -    # including 64 byte of linkage + parameter area (R1 % 16 == 0) -    subi  %r3, %r3, 248 - -    # third arg of make_fcontext() == address of context-function -    # entry point (ELFv2) or descriptor (ELFv1) -#if _CALL_ELF == 2 -    # save address of context-function entry point -    std  %r5, 176(%r3) -#else -    # save address of context-function entry point -    ld   %r4, 0(%r5) -    std  %r4, 176(%r3) -    # save TOC of context-function -    ld   %r4, 8(%r5) -    std  %r4, 0(%r3) -#endif - -    # set back-chain to zero -    li   %r0, 0 -    std  %r0, 184(%r3) - -#if _CALL_ELF != 2 -    # zero in r3 indicates first jump to context-function -    std  %r0, 152(%r3) -#endif - -    # load LR -    mflr  %r0 -    # jump to label 1 -    bl  1f -1: -    # load LR into R4 -    mflr  %r4 -    # compute abs address of label finish -    addi  %r4, %r4, finish - 1b -    # restore LR -    mtlr  %r0 -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    std  %r4, 168(%r3) - -    # restore return address from R6 -    mtlr  %r6 - -    blr  # return pointer to context-data - -finish: -    # save return address into R0 -    mflr  %r0 -    # save return address on stack, set up stack frame -    std  %r0, 8(%r1) -    # allocate stack space, R1 % 16 == 0 -    stdu  %r1, -32(%r1) - -    # exit code is zero -    li  %r3, 0 -    # exit application -    bl  _exit -    nop -#if _CALL_ELF == 2 -	.size make_fcontext, .-make_fcontext -#else -# ifdef _CALL_LINUX -	.size .make_fcontext, .-.L.make_fcontext -# else -	.size .make_fcontext, .-.make_fcontext -# endif -#endif - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_macho_gas.S deleted file mode 100644 index d8cdd2d080d..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_macho_gas.S +++ /dev/null @@ -1,128 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    R13    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  |    FCTX   |    DATA   |           |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.text -.private_extern _make_fcontext -.globl _make_fcontext -_make_fcontext: -    ; save return address into R6 -    mflr  r6 - -    ; first arg of make_fcontext() == top address of context-function -    ; shift address in R3 to lower 16 byte boundary -    clrrwi  r3, r3, 4 - -    ; reserve space for context-data on context-stack -    ; including 64 byte of linkage + parameter area (R1  16 == 0) -    subi  r3, r3, 240 - -    ; third arg of make_fcontext() == address of context-function -    stw  r5, 176(r3) - -    ; set back-chain to zero -    li   r0, 0 -    std  r0, 184(r3) - -    ; compute address of returned transfer_t -    addi r0, r3, 224 -    mr   r4, r0 -    std  r4, 152(r3) - -    ; load LR -    mflr  r0 -    ; jump to label 1 -    bl  l1 -l1: -    ; load LR into R4 -    mflr  r4 -    ; compute abs address of label finish -    addi  r4, r4, lo16((finish - .) + 4) -    ; restore LR -    mtlr  r0 -    ; save address of finish as return-address for context-function -    ; will be entered after context-function returns -    std  r4, 168(r3) - -    ; restore return address from R6 -    mtlr  r6 - -    blr  ; return pointer to context-data - -finish: -    ; save return address into R0 -    mflr  r0 -    ; save return address on stack, set up stack frame -    stw  r0, 8(r1) -    ; allocate stack space, R1  16 == 0 -    stwu  r1, -32(r1) - -    ; set return value to zero -    li  r3, 0 -    ; exit application -    bl  __exit -    nop diff --git a/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_xcoff_gas.S b/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_xcoff_gas.S deleted file mode 100644 index 2374b50ee63..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_ppc64_sysv_xcoff_gas.S +++ /dev/null @@ -1,137 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    TOC    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | TOC saved |    FCTX   |    DATA   |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -    .file "make_ppc64_sysv_xcoff_gas.S" -    .toc -    .csect .text[PR], 5 -    .align 2 -    .globl  make_fcontext[DS] -    .globl .make_fcontext -    .csect  make_fcontext[DS], 3 -make_fcontext: -    .llong .make_fcontext[PR], TOC[tc0], 0 -    .csect .text[PR], 5 -.make_fcontext: -    # save return address into R6 -    mflr  6 - -    # first arg of make_fcontext() == top address of context-function -    # shift address in R3 to lower 16 byte boundary -    clrrdi  3, 3, 4 - -    # reserve space for context-data on context-stack -    # including 64 byte of linkage + parameter area (R1 % 16 == 0) -    subi  3, 3, 248 - -    # third arg of make_fcontext() == address of context-function descriptor -    ld   4, 0(5) -    std  4, 176(3) -    # save TOC of context-function -    ld   4, 8(5) -    std  4, 0(3) - -    # set back-chain to zero -    li   0, 0 -    std  0, 184(3) - -    # zero in r3 indicates first jump to context-function -    std  0, 152(3) - -    # load LR -    mflr  0 -    # jump to label 1 -    bl  .Label -.Label: -    # load LR into R4 -    mflr  4 -    # compute abs address of label .L_finish -    addi  4, 4, .L_finish - .Label -    # restore LR -    mtlr  0 -    # save address of finish as return-address for context-function -    # will be entered after context-function returns -    std  4, 168(3) - -    # restore return address from R6 -    mtlr  6 - -    blr  # return pointer to context-data - -.L_finish: -    # save return address into R0 -    mflr  0 -    # save return address on stack, set up stack frame -    std  0, 8(1) -    # allocate stack space, R1 % 16 == 0 -    stdu  1, -32(1) - -    # exit code is zero -    li  3, 0 -    # exit application -    bl  ._exit -    nop diff --git a/contrib/restricted/boost/context/src/asm/make_riscv64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_riscv64_sysv_elf_gas.S deleted file mode 100644 index 6d97c59e877..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_riscv64_sysv_elf_gas.S +++ /dev/null @@ -1,92 +0,0 @@ -/* -   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) -*/ -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  | 0x0 | 0x4 | 0x8 | 0xc | 0x10| 0x14| 0x18| 0x1c|  * - *  -------------------------------------------------  * - *  |    fs0    |    fs1    |    fs2    |    fs3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  | 0x20| 0x24| 0x28| 0x2c| 0x30| 0x34| 0x38| 0x3c|  * - *  -------------------------------------------------  * - *  |    fs4    |    fs5    |    fs6    |    fs7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  | 0x40| 0x44| 0x48| 0x4c| 0x50| 0x54| 0x58| 0x5c|  * - *  -------------------------------------------------  * - *  |    fs8    |    fs9    |    fs10   |    fs11   |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  | 0x60| 0x64| 0x68| 0x6c| 0x70| 0x74| 0x78| 0x7c|  * - *  -------------------------------------------------  * - *  |    s0     |    s1     |    s2     |    s3     |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 0x80| 0x84| 0x88| 0x8c| 0x90| 0x94| 0x98| 0x9c|  * - *  -------------------------------------------------  * - *  |    s4     |    s5     |    s6     |     s7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 | 43  |  44 | 45  |  46 | 47  |  * - *  -------------------------------------------------  * - *  | 0xa0| 0xa4| 0xa8| 0xac| 0xb0| 0xb4| 0xb8| 0xbc|  * - *  -------------------------------------------------  * - *  |     s8    |     s9    |    s10    |    s11    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 | 51  |     |     |     |     |  * - *  -------------------------------------------------  * - *  | 0xc0| 0xc4| 0xc8| 0xcc|     |     |     |     |  * - *  -------------------------------------------------  * - *  |     ra    |     pc    |           |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.file "make_riscv64_sysv_elf_gas.S" -.text -.align  1 -.global make_fcontext -.hidden make_fcontext -.type   make_fcontext, %function -make_fcontext: -    # shift address in a0 (allocated stack) to lower 16 byte boundary -    andi a0, a0, ~0xF - -    # reserve space for context-data on context-stack -    addi  a0, a0, -0xd0 - -    # third arg of make_fcontext() == address of context-function -    # store address as a PC to jump in -    sd  a2, 0xc8(a0) - -    # save address of finish as return-address for context-function -    # will be entered after context-function returns (RA register) -    lla  a4, finish -    sd  a4, 0xc0(a0) - -    ret // return pointer to context-data (a0) - -finish: -    # exit code is zero -    li  a0, 0 -    # exit application -    tail  _exit@plt - -.size   make_fcontext,.-make_fcontext -# Mark that we don't need executable stack. -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_s390x_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_s390x_sysv_elf_gas.S deleted file mode 100644 index 4d6aa62c0ae..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_s390x_sysv_elf_gas.S +++ /dev/null @@ -1,109 +0,0 @@ -/******************************************************* - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |    24     |  * - *  -------------------------------------------------  * - *  |   t.fctx  |   t.data  |    r2     |    r6     |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |     r7    |     r8    |     r9    |    r10    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |     72    |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    r11    |    r12    |    r13    |    r14    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 | 29  |  30 |  31 |  * - *  -------------------------------------------------  * - *  |     96    |    104    |    112    |    120    |  * - *  -------------------------------------------------  * - *  |     f8    |     f9    |    f10    |    f11    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  |    128    |    136    |    144    |    152    |  * - *  -------------------------------------------------  * - *  |    f12    |    f13    |    f14    |    f15    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  |    160    |    168    |    176    |           |  * - *  -------------------------------------------------  * - *  |    fpc    |     pc    |           |           |  * - *  -------------------------------------------------  * - *******************************************************/ - -.text -.align	8 -.global	make_fcontext -.hidden make_fcontext -.type	make_fcontext, @function - -#define ARG_OFFSET         0 -#define GR_OFFSET          16 -#define R14_OFFSET         88 -#define FP_OFFSET          96 -#define FPC_OFFSET         160 -#define PC_OFFSET          168 -#define CONTEXT_SIZE       176 - -/* - -fcontext_t make_fcontext( void * sp, std::size_t size, void (* fn)( transfer_t) ); - -Create and return a context below SP to call FN. - -Incoming args -r2 - The stack location where to create the context -r3 - The size of the context -r4 - The address of the context function - -*/ - -make_fcontext: -	.machine "z10" -	/* Align the stack to an 8 byte boundary.  */ -	nill    %r2,0xfff8 - -	/* Allocate stack space for the context.  */ -	aghi	%r2,-CONTEXT_SIZE - -	/* Set the r2 save slot to zero.  This indicates jump_fcontext -	   that this is a special context.  */ -	mvghi	GR_OFFSET(%r2),0 - -	/* Save the floating point control register.  */ -	stfpc	FPC_OFFSET(%r2) - -	/* Store the address of the target function as new pc.  */ -	stg	%r4,PC_OFFSET(%r2) - -	/* Store a pointer to the finish routine as r14. If a function -	   called via context routines just returns that value will be -	   loaded and used as return address.  Hence the program will -	   just exit.  */ -	larl	%r1,finish -	stg	%r1,R14_OFFSET(%r2) - -	/* Return as usual with the new context returned in r2.  */ -	br	%r14 - -finish: -	/* In finish tasks, you load the exit code and exit the -	   make_fcontext This is called when the context-function is -	   entirely executed.  */ -	lghi	%r2,0 -	brasl	%r14,_exit@PLT - -.size   make_fcontext,.-make_fcontext -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/make_sparc64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/make_sparc64_sysv_elf_gas.S deleted file mode 100644 index 3e7ee809c91..00000000000 --- a/contrib/restricted/boost/context/src/asm/make_sparc64_sysv_elf_gas.S +++ /dev/null @@ -1,68 +0,0 @@ -/* -       Copyright Claudio Jeker 2024 -   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) -*/ - -/* - * fcontext_t *make_fcontext(void *sp, size_t size, void (*fn)(transfer_t)); - */ -#define CC64FSZ 176 -#define BIAS 2047 -#define FP 112 -#define SP 128 -#define I7 136 - -.file "make_sparc64_sysv_elf_gas.S" -.text -.align  4 -.global make_fcontext -.type   make_fcontext, %function -make_fcontext: -	save	%sp, -CC64FSZ, %sp - -	# shift address in %i0 (allocated stack) to lower 16 byte boundary -	and	%i0, -0xf, %i0 - -	# reserve space for two frames on the stack -	# the first frame is for the call the second one holds the data -	# for jump_fcontext -	sub	%i0, 2 * CC64FSZ, %i0 - -	# third argument of make_fcontext() is the context-function to call -	# store it in the first stack frame, also clear %fp there to indicate -	# the end of the stack. -	stx	%i2, [%i0 + CC64FSZ + I7] -	stx	%g0, [%i0 + CC64FSZ + FP] - -	# On OpenBSD stackghost prevents overriding the return address on -	# a stack frame. So this code uses an extra trampoline to load -	# to call the context-function and then do the _exit(0) dance. -	# Extract the full address of the trampoline via pc relative addressing -1: -	rd	%pc, %l0 -	add	%l0, (trampoline - 1b - 8), %l0 -	stx	%l0, [%i0 + I7] - -	# Save framepointer to first stack frame but first substract the BIAS -	add	%i0, CC64FSZ - BIAS, %l0 -	stx	%l0, [%i0 + SP] - -	# Return context-data which is also includes the BIAS -	ret -	 restore %i0, -BIAS, %o0 - -trampoline: -	ldx	[%sp + BIAS + I7], %l0 - -	# no need to setup transfer_t, already in %o0 and %o1 -	jmpl	%l0, %o7 -	 nop - -	call	_exit -	 clr	%o0 -	unimp -.size	make_fcontext,.-make_fcontext -# Mark that we don't need executable stack. -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_combined_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/ontop_combined_sysv_macho_gas.S deleted file mode 100644 index 7d254de22cf..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_combined_sysv_macho_gas.S +++ /dev/null @@ -1,24 +0,0 @@ -/* -            Copyright Sergue E. Leontiev 2013. -   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) -*/ - -// Stub file for universal binary - -#if defined(__i386__) -    #include "ontop_i386_sysv_macho_gas.S" -#elif defined(__x86_64__) -    #include "ontop_x86_64_sysv_macho_gas.S" -#elif defined(__ppc__) -    #include "ontop_ppc32_sysv_macho_gas.S" -#elif defined(__ppc64__) -    #include "ontop_ppc64_sysv_macho_gas.S" -#elif defined(__arm__) -    #include "ontop_arm_aapcs_macho_gas.S" -#elif defined(__arm64__) -    #include "ontop_arm64_aapcs_macho_gas.S" -#else -    #error "No arch's" -#endif diff --git a/contrib/restricted/boost/context/src/asm/ontop_loongarch64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_loongarch64_sysv_elf_gas.S deleted file mode 100644 index ed392e8afac..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_loongarch64_sysv_elf_gas.S +++ /dev/null @@ -1,119 +0,0 @@ -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |     24    |  * - *  -------------------------------------------------  * - *  |    FS0    |    FS1    |    FS2    |    FS3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |    FS4    |    FS5    |    FS6    |    FS7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |    72     |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    S0     |    S1     |     S2    |     S3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    S4     |    S5     |     S6    |     S7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    S8     |    FP     |     RA    |     PC    |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "ontop_loongarch64_sysv_elf_gas.S" -.text -.globl ontop_fcontext -.hidden ontop_fcontext -.align 2 -.type ontop_fcontext,@function -ontop_fcontext: -    # reserve space on stack -    addi.d  $sp, $sp, -160 - -    # save fs0 - fs7 -    fst.d  $fs0, $sp, 0 -    fst.d  $fs1, $sp, 8 -    fst.d  $fs2, $sp, 16 -    fst.d  $fs3, $sp, 24 -    fst.d  $fs4, $sp, 32 -    fst.d  $fs5, $sp, 40 -    fst.d  $fs6, $sp, 48 -    fst.d  $fs7, $sp, 56 - -    # save s0 - s8, fp, ra -    st.d  $s0, $sp, 64 -    st.d  $s1, $sp, 72 -    st.d  $s2, $sp, 80 -    st.d  $s3, $sp, 88 -    st.d  $s4, $sp, 96 -    st.d  $s5, $sp, 104 -    st.d  $s6, $sp, 112 -    st.d  $s7, $sp, 120 -    st.d  $s8, $sp, 128 -    st.d  $fp, $sp, 136 -    st.d  $ra, $sp, 144 - -    # save RA as PC -    st.d  $ra, $sp, 152 - -    # store SP (pointing to context-data) in A3 -    move  $a3, $sp - -    # restore SP (pointing to context-data) from A0 -    move  $sp, $a0 - -    # load fs0 - fs11 -    fld.d  $fs0, $sp, 0 -    fld.d  $fs1, $sp, 8 -    fld.d  $fs2, $sp, 16 -    fld.d  $fs3, $sp, 24 -    fld.d  $fs4, $sp, 32 -    fld.d  $fs5, $sp, 40 -    fld.d  $fs6, $sp, 48 -    fld.d  $fs7, $sp, 56 - -    #load s0 - s11, fp, ra -    ld.d  $s0, $sp, 64 -    ld.d  $s1, $sp, 72 -    ld.d  $s2, $sp, 80 -    ld.d  $s3, $sp, 88 -    ld.d  $s4, $sp, 96 -    ld.d  $s5, $sp, 104 -    ld.d  $s6, $sp, 112 -    ld.d  $s7, $sp, 120 -    ld.d  $s8, $sp, 128 -    ld.d  $fp, $sp, 136 -    ld.d  $ra, $sp, 144 - -    # return transfer_t from jump -    # pass transfer_t as first arg in context function -    # a0 == FCTX, a1 == DATA -    move  $a0, $a3 - -    # adjust stack -    addi.d  $sp, $sp, 160 - -    # jump to context -    jr  $a2 -.size ontop_fcontext, .-ontop_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_mips32_o32_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_mips32_o32_elf_gas.S deleted file mode 100644 index e6306cc375e..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_mips32_o32_elf_gas.S +++ /dev/null @@ -1,121 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    F20    |    F22    |    F24    |    F26    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    F28    |    F30    |  S0 |  S1 |  S2 |  S3 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |  S4 |  S5 |  S6 |  S7 |  FP |hiddn|  RA |  PC |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |       ABI ARGS        |  GP | FCTX| DATA|     |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "ontop_mips32_o32_elf_gas.S" -.text -.globl ontop_fcontext -.hidden ontop_fcontext -.align 2 -.type ontop_fcontext,@function -.ent ontop_fcontext -ontop_fcontext: -    # reserve space on stack -    addiu $sp, $sp, -96 - -    sw  $s0, 48($sp)  # save S0 -    sw  $s1, 52($sp)  # save S1 -    sw  $s2, 56($sp)  # save S2 -    sw  $s3, 60($sp)  # save S3 -    sw  $s4, 64($sp)  # save S4 -    sw  $s5, 68($sp)  # save S5 -    sw  $s6, 72($sp)  # save S6 -    sw  $s7, 76($sp)  # save S7 -    sw  $fp, 80($sp)  # save FP -    sw  $a0, 84($sp)  # save hidden, address of returned transfer_t -    sw  $ra, 88($sp)  # save RA -    sw  $ra, 92($sp)  # save RA as PC - -#if defined(__mips_hard_float) -    s.d  $f20, ($sp)  # save F20 -    s.d  $f22, 8($sp)  # save F22 -    s.d  $f24, 16($sp)  # save F24 -    s.d  $f26, 24($sp)  # save F26 -    s.d  $f28, 32($sp)  # save F28 -    s.d  $f30, 40($sp)  # save F30 -#endif - -    # store SP (pointing to context-data) in A0 -    move  $a0, $sp - -    # restore SP (pointing to context-data) from A1 -    move  $sp, $a1 - -#if defined(__mips_hard_float) -    l.d  $f20, ($sp)  # restore F20 -    l.d  $f22, 8($sp)  # restore F22 -    l.d  $f24, 16($sp)  # restore F24 -    l.d  $f26, 24($sp)  # restore F26 -    l.d  $f28, 32($sp)  # restore F28 -    l.d  $f30, 40($sp)  # restore F30 -#endif - -    lw  $s0, 48($sp)  # restore S0 -    lw  $s1, 52($sp)  # restore S1 -    lw  $s2, 56($sp)  # restore S2 -    lw  $s3, 60($sp)  # restore S3 -    lw  $s4, 64($sp)  # restore S4 -    lw  $s5, 68($sp)  # restore S5 -    lw  $s6, 72($sp)  # restore S6 -    lw  $s7, 76($sp)  # restore S7 -    lw  $fp, 80($sp)  # restore FP -    lw  $v0, 84($sp)  # restore hidden, address of returned transfer_t -    lw  $ra, 88($sp)  # restore RA - -    # load PC -    move $t9, $a3 - -    # adjust stack -    addiu $sp, $sp, 96 -     -    # return transfer_t from jump -    sw  $a0, ($v0)  # fctx of transfer_t -    sw  $a2, 4($v0) # data of transfer_t -    # pass transfer_t as first arg in context function -    # A0 == hidden, A1 == fctx, A2 == data -    move  $a1, $a0  -    move  $a0, $v0 - -    # jump to context -    jr  $t9 -.end ontop_fcontext -.size ontop_fcontext, .-ontop_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_mips64_n64_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_mips64_n64_elf_gas.S deleted file mode 100644 index e73e0395b12..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_mips64_n64_elf_gas.S +++ /dev/null @@ -1,124 +0,0 @@ -/* -            Copyright Jiaxun Yang 2018. -   Distributed under the Boost Software License, Version 1.0. -      (See accompanying file LICENSE_1_0.txt or copy at -          http://www.boost.org/LICENSE -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |     24    |  * - *  -------------------------------------------------  * - *  |    F24    |    F25    |    F26    |    F27    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |    F28    |    F29    |    F30    |    F31    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |    72     |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    S0     |    S1     |     S2    |     S3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    S4     |    S5     |     S6    |     S7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    FP     |    GP     |     RA    |     PC    |  * - *  -------------------------------------------------  * - *                                                     * - * *****************************************************/ - -.file "ontop_mips64_n64_elf_gas.S" -.text -.globl ontop_fcontext -.hidden ontop_fcontext -.align 3 -.type ontop_fcontext,@function -.ent ontop_fcontext -ontop_fcontext: -    # reserve space on stack -    daddiu $sp, $sp, -160 - -    sd  $s0, 64($sp)  # save S0 -    sd  $s1, 72($sp)  # save S1 -    sd  $s2, 80($sp)  # save S2 -    sd  $s3, 88($sp)  # save S3 -    sd  $s4, 96($sp)  # save S4 -    sd  $s5, 104($sp) # save S5 -    sd  $s6, 112($sp) # save S6 -    sd  $s7, 120($sp) # save S7 -    sd  $fp, 128($sp) # save FP -    sd  $ra, 144($sp) # save RA -    sd  $ra, 152($sp) # save RA as PC - -#if defined(__mips_hard_float) -    s.d  $f24, 0($sp)   # save F24 -    s.d  $f25, 8($sp)   # save F25 -    s.d  $f26, 16($sp)  # save F26 -    s.d  $f27, 24($sp)  # save F27 -    s.d  $f28, 32($sp)  # save F28 -    s.d  $f29, 40($sp)  # save F29 -    s.d  $f30, 48($sp)  # save F30 -    s.d  $f31, 56($sp)  # save F31 -#endif - -    # store SP (pointing to context-data) in t0 -    move  $t0, $sp - -    # restore SP (pointing to context-data) from a0 -    move  $sp, $a0 - -#if defined(__mips_hard_float) -    l.d  $f24, 0($sp)   # restore F24 -    l.d  $f25, 8($sp)   # restore F25 -    l.d  $f26, 16($sp)  # restore F26 -    l.d  $f27, 24($sp)  # restore F27 -    l.d  $f28, 32($sp)  # restore F28 -    l.d  $f29, 40($sp)  # restore F29 -    l.d  $f30, 48($sp)  # restore F30 -    l.d  $f31, 56($sp)  # restore F31 -#endif - -    ld  $s0, 64($sp)  # restore S0 -    ld  $s1, 72($sp)  # restore S1 -    ld  $s2, 80($sp)  # restore S2 -    ld  $s3, 88($sp)  # restore S3 -    ld  $s4, 96($sp)  # restore S4 -    ld  $s5, 104($sp) # restore S5 -    ld  $s6, 112($sp) # restore S6 -    ld  $s7, 120($sp) # restore S7 -    ld  $fp, 128($sp) # restore FP -    ld  $ra, 144($sp) # restore RA - -    # load PC -    move $t9, $a2 - -    # adjust stack -    daddiu $sp, $sp, 160 - -    move  $a0, $t0 # move param from t0 to a0 as param - -    # jump to context -    jr  $t9 -.end ontop_fcontext -.size ontop_fcontext, .-ontop_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc32_ppc64_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc32_ppc64_sysv_macho_gas.S deleted file mode 100644 index 4632f4cc9e0..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc32_ppc64_sysv_macho_gas.S +++ /dev/null @@ -1,16 +0,0 @@ -/* -            Copyright Sergue E. Leontiev 2013. -   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) -*/ - -// Stub file for universal binary - -#if defined(__ppc__) -    #include "ontop_ppc32_sysv_macho_gas.S" -#elif defined(__ppc64__) -    #include "ontop_ppc64_sysv_macho_gas.S" -#else -    #error "No arch's" -#endif diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_elf_gas.S deleted file mode 100644 index 8aa350a4f8b..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_elf_gas.S +++ /dev/null @@ -1,194 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |bchai|hiddn|   fpscr   |  PC |  CR | R14 | R15 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  | R16 | R17 | R18 | R19 | R20 | R21 | R22 | R23 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  | R24 | R25 | R26 | R27 | R28 | R29 | R30 | R31 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  ------------------------|------------              * - *  | 224 | 228 | 232 | 236 | 240 | 244 |              * - *  ------------------------|------------              * - *  |    F30    |    F31    |bchai|  LR |              * - *  ------------------------|------------              * - *                                                     * - *******************************************************/ - -.file "ontop_ppc32_sysv_elf_gas.S" -.text -.globl ontop_fcontext -.hidden ontop_fcontext -.align 2 -.type ontop_fcontext,@function -ontop_fcontext: -    # Linux: ontop_fcontext( hidden transfer_t * R3, R4, R5, R6) -    # Other: transfer_t R3:R4 = jump_fcontext( R3, R4, R5) - -    mflr  %r0  # return address from LR -    mffs  %f0  # FPSCR -    mfcr  %r8  # condition register - -    stwu  %r1, -240(%r1)  # allocate stack space, R1 % 16 == 0 -    stw   %r0, 244(%r1)   # save LR in caller's frame - -#ifdef __linux__ -    stw   %r3, 4(%r1)   # hidden pointer -#endif - -    stfd  %f0, 8(%r1)   # FPSCR -    stw   %r0, 16(%r1)  # LR as PC -    stw   %r8, 20(%r1)  # CR - -    # Save registers R14 to R31. -    # Don't change R2, the thread-local storage pointer. -    # Don't change R13, the small data pointer. -    stw   %r14, 24(%r1) -    stw   %r15, 28(%r1) -    stw   %r16, 32(%r1) -    stw   %r17, 36(%r1) -    stw   %r18, 40(%r1) -    stw   %r19, 44(%r1) -    stw   %r20, 48(%r1) -    stw   %r21, 52(%r1) -    stw   %r22, 56(%r1) -    stw   %r23, 60(%r1) -    stw   %r24, 64(%r1) -    stw   %r25, 68(%r1) -    stw   %r26, 72(%r1) -    stw   %r27, 76(%r1) -    stw   %r28, 80(%r1) -    stw   %r29, 84(%r1) -    stw   %r30, 88(%r1) -    stw   %r31, 92(%r1) - -    # Save registers F14 to F31 in slots with 8-byte alignment. -    # 4-byte alignment may stall the pipeline of some processors. -    # Less than 4 may cause alignment traps. -    stfd  %f14, 96(%r1) -    stfd  %f15, 104(%r1) -    stfd  %f16, 112(%r1) -    stfd  %f17, 120(%r1) -    stfd  %f18, 128(%r1) -    stfd  %f19, 136(%r1) -    stfd  %f20, 144(%r1) -    stfd  %f21, 152(%r1) -    stfd  %f22, 160(%r1) -    stfd  %f23, 168(%r1) -    stfd  %f24, 176(%r1) -    stfd  %f25, 184(%r1) -    stfd  %f26, 192(%r1) -    stfd  %f27, 200(%r1) -    stfd  %f28, 208(%r1) -    stfd  %f29, 216(%r1) -    stfd  %f30, 224(%r1) -    stfd  %f31, 232(%r1) - -    # store RSP (pointing to context-data) in R7/R6 -    # restore RSP (pointing to context-data) from R4/R3 -#ifdef __linux__ -    mr   %r7, %r1 -    mr   %r1, %r4 -    lwz  %r3, 4(%r1)   # hidden pointer -#else -    mr   %r6, %r1 -    mr   %r1, %r3 -#endif - -    # ignore PC at 16(%r1) -    lfd  %f0, 8(%r1)   # FPSCR -    lwz  %r8, 20(%r1)  # CR - -    mtfsf  0xff, %f0   # restore FPSCR -    mtcr   %r8         # restore CR - -    # restore R14 to R31 -    lwz  %r14, 24(%r1) -    lwz  %r15, 28(%r1) -    lwz  %r16, 32(%r1) -    lwz  %r17, 36(%r1) -    lwz  %r18, 40(%r1) -    lwz  %r19, 44(%r1) -    lwz  %r20, 48(%r1) -    lwz  %r21, 52(%r1) -    lwz  %r22, 56(%r1) -    lwz  %r23, 60(%r1) -    lwz  %r24, 64(%r1) -    lwz  %r25, 68(%r1) -    lwz  %r26, 72(%r1) -    lwz  %r27, 76(%r1) -    lwz  %r28, 80(%r1) -    lwz  %r29, 84(%r1) -    lwz  %r30, 88(%r1) -    lwz  %r31, 92(%r1) - -    # restore F14 to F31 -    lfd  %f14, 96(%r1) -    lfd  %f15, 104(%r1) -    lfd  %f16, 112(%r1) -    lfd  %f17, 120(%r1) -    lfd  %f18, 128(%r1) -    lfd  %f19, 136(%r1) -    lfd  %f20, 144(%r1) -    lfd  %f21, 152(%r1) -    lfd  %f22, 160(%r1) -    lfd  %f23, 168(%r1) -    lfd  %f24, 176(%r1) -    lfd  %f25, 184(%r1) -    lfd  %f26, 192(%r1) -    lfd  %f27, 200(%r1) -    lfd  %f28, 208(%r1) -    lfd  %f29, 216(%r1) -    lfd  %f30, 224(%r1) -    lfd  %f31, 232(%r1) - -    # restore LR from caller's frame -    lwz   %r0, 244(%r1) -    mtlr  %r0 - -    # adjust stack -    addi  %r1, %r1, 240 - -    # see tail_ppc32_sysv_elf_gas.cpp -    # Linux: fcontext_ontop_tail( hidden transfer_t * R3, R4, R5, R6, R7) -    # Other: transfer_t R3:R4 = fcontext_ontop_tail( R3, R4, R5, R6) -    b ontop_fcontext_tail -.size ontop_fcontext, .-ontop_fcontext - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_macho_gas.S deleted file mode 100644 index ee6f5b72289..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_macho_gas.S +++ /dev/null @@ -1,202 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/****************************************************** - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F30    |    F31    |   fpscr   | R13 | R14 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  | R15 | R16 | R17 | R18 | R19 | R20 | R21 | R22 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  | R23 | R24 | R25 | R26 | R27 | R28 | R29 | R30 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | R31 |hiddn|  CR |  LR |  PC |bchai|linkr| FCTX|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |                                         |  * - *  -------------------------------------------------  * - *  | 256 |                                         |  * - *  -------------------------------------------------  * - *  | DATA|                                         |  *  - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.text -.private_extern _ontop_fcontext -.globl _ontop_fcontext -.align 2 -_ontop_fcontext: -    ; reserve space on stack -    subi  r1, r1, 244 - -    stfd  f14, 0(r1)  ; save F14 -    stfd  f15, 8(r1)  ; save F15 -    stfd  f16, 16(r1)  ; save F16 -    stfd  f17, 24(r1)  ; save F17 -    stfd  f18, 32(r1)  ; save F18 -    stfd  f19, 40(r1)  ; save F19 -    stfd  f20, 48(r1)  ; save F20 -    stfd  f21, 56(r1)  ; save F21 -    stfd  f22, 64(r1)  ; save F22 -    stfd  f23, 72(r1)  ; save F23 -    stfd  f24, 80(r1)  ; save F24 -    stfd  f25, 88(r1)  ; save F25 -    stfd  f26, 96(r1)  ; save F26 -    stfd  f27, 104(r1)  ; save F27 -    stfd  f28, 112(r1)  ; save F28 -    stfd  f29, 120(r1)  ; save F29 -    stfd  f30, 128(r1)  ; save F30 -    stfd  f31, 136(r1)  ; save F31 -    mffs  f0  ; load FPSCR -    stfd  f0, 144(r1)  ; save FPSCR - -    stw  r13, 152(r1)  ; save R13 -    stw  r14, 156(r1)  ; save R14 -    stw  r15, 160(r1)  ; save R15 -    stw  r16, 164(r1)  ; save R16 -    stw  r17, 168(r1)  ; save R17 -    stw  r18, 172(r1)  ; save R18 -    stw  r19, 176(r1)  ; save R19 -    stw  r20, 180(r1)  ; save R20 -    stw  r21, 184(r1)  ; save R21 -    stw  r22, 188(r1)  ; save R22 -    stw  r23, 192(r1)  ; save R23 -    stw  r24, 196(r1)  ; save R24 -    stw  r25, 200(r1)  ; save R25 -    stw  r26, 204(r1)  ; save R26 -    stw  r27, 208(r1)  ; save R27 -    stw  r28, 212(r1)  ; save R28 -    stw  r29, 216(r1)  ; save R29 -    stw  r30, 220(r1)  ; save R30 -    stw  r31, 224(r1)  ; save R31 -    stw  r3,  228(r1)  ; save hidden - -    ; save CR -    mfcr  r0 -    stw   r0, 232(r1) -    ; save LR -    mflr  r0 -    stw   r0, 236(r1) -    ; save LR as PC -    stw   r0, 240(r1) - -    ; store RSP (pointing to context-data) in R7 -    mr  r7, r1 - -    ; restore RSP (pointing to context-data) from R4 -    mr  r1, r4 - -    lfd  f14, 0(r1)  ; restore F14 -    lfd  f15, 8(r1)  ; restore F15 -    lfd  f16, 16(r1)  ; restore F16 -    lfd  f17, 24(r1)  ; restore F17 -    lfd  f18, 32(r1)  ; restore F18 -    lfd  f19, 40(r1)  ; restore F19 -    lfd  f20, 48(r1)  ; restore F20 -    lfd  f21, 56(r1)  ; restore F21 -    lfd  f22, 64(r1)  ; restore F22 -    lfd  f23, 72(r1)  ; restore F23 -    lfd  f24, 80(r1)  ; restore F24 -    lfd  f25, 88(r1)  ; restore F25 -    lfd  f26, 96(r1)  ; restore F26 -    lfd  f27, 104(r1)  ; restore F27 -    lfd  f28, 112(r1)  ; restore F28 -    lfd  f29, 120(r1)  ; restore F29 -    lfd  f30, 128(r1)  ; restore F30 -    lfd  f31, 136(r1)  ; restore F31 -    lfd  f0,  144(r1)  ; load FPSCR -    mtfsf  0xff, f0  ; restore FPSCR - -    lwz  r13, 152(r1)  ; restore R13 -    lwz  r14, 156(r1)  ; restore R14 -    lwz  r15, 160(r1)  ; restore R15 -    lwz  r16, 164(r1)  ; restore R16 -    lwz  r17, 168(r1)  ; restore R17 -    lwz  r18, 172(r1)  ; restore R18 -    lwz  r19, 176(r1)  ; restore R19 -    lwz  r20, 180(r1)  ; restore R20 -    lwz  r21, 184(r1)  ; restore R21 -    lwz  r22, 188(r1)  ; restore R22 -    lwz  r23, 192(r1)  ; restore R23 -    lwz  r24, 196(r1)  ; restore R24 -    lwz  r25, 200(r1)  ; restore R25 -    lwz  r26, 204(r1)  ; restore R26 -    lwz  r27, 208(r1)  ; restore R27 -    lwz  r28, 212(r1)  ; restore R28 -    lwz  r29, 216(r1)  ; restore R29 -    lwz  r30, 220(r1)  ; restore R30 -    lwz  r31, 224(r1)  ; restore R31 -    lwz  r3,  228(r1)  ; restore hidden - -    ; restore CR -    lwz   r0, 232(r1) -    mtcr  r0 -    ; restore LR -    lwz   r0, 236(r1) -    mtlr  r0 -    ; ignore PC - -    ; adjust stack -    addi  r1, r1, 244 - -    ; Need to pass ontop_fcontext_tail( -    ;   hidden R3, -    ;   R4 = ignore, -    ;   R5 = data, -    ;   R6 = ontop-function, -    ;   R7 = fcontext_t -    ; ) -    ; All of these registers are correctly set at this point -    b _ontop_fcontext_tail diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_xcoff_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_xcoff_gas.S deleted file mode 100644 index 9dfb492f7e4..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc32_sysv_xcoff_gas.S +++ /dev/null @@ -1,230 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |bchai|  CR | LR  |compl| link| TOC | R14 | R15 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  | R16 | R17 | R18 | R19 | R20 | R21 | R22 | R23 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  | R24 | R25 | R26 | R27 | R28 | R29 | R30 | R31 |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    F14    |    F15    |    F16    |    F17    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    F18    |    F19    |    F20    |    F21    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |    F22    |    F23    |    F24    |    F25    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |    F26    |    F27    |    F28    |    F29    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  |    F30    |    F31    |  PC |hiddn|  fpscr    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  | 256 | 260 | 264 | 268 | 272 | 276 | 280 | 284 |  * - *  -------------------------------------------------  * - *  |bchai|savLR|savLR|compl| link|svTOC| FCTX| DATA|  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -    .file "ontop_ppc32_sysv_xcoff_xas.S" -    .toc -    .csect .text[PR] -    .align 2 -    .globl  ontop_fcontext[DS] -    .globl .ontop_fcontext -    .csect  ontop_fcontext[DS] -ontop_fcontext: -    .long .ontop_fcontext[PR], TOC[tc0], 0 -    .csect .text[PR], 5 -.ontop_fcontext: -    # reserve space on stack -    subi  1, 1, 256 - -    # save CR -    mfcr  0 -    stw   0, 4(1) -    # save LR -    mflr  0 -    stw   0, 8(1) -    # save LR as PC -    stw   0, 240(1) -    # save TOC -    stw   2, 20(1) - -    # Save registers R14 to R31. -    stw   14, 24(1) -    stw   15, 28(1) -    stw   16, 32(1) -    stw   17, 36(1) -    stw   18, 40(1) -    stw   19, 44(1) -    stw   20, 48(1) -    stw   21, 52(1) -    stw   22, 56(1) -    stw   23, 60(1) -    stw   24, 64(1) -    stw   25, 68(1) -    stw   26, 72(1) -    stw   27, 76(1) -    stw   28, 80(1) -    stw   29, 84(1) -    stw   30, 88(1) -    stw   31, 92(1) - -    # Save registers F14 to F31 in slots with 8-byte alignment. -    # 4-byte alignment may stall the pipeline of some processors. -    # Less than 4 may cause alignment traps. -    stfd  14, 96(1) -    stfd  15, 104(1) -    stfd  16, 112(1) -    stfd  17, 120(1) -    stfd  18, 128(1) -    stfd  19, 136(1) -    stfd  20, 144(1) -    stfd  21, 152(1) -    stfd  22, 160(1) -    stfd  23, 168(1) -    stfd  24, 176(1) -    stfd  25, 184(1) -    stfd  26, 192(1) -    stfd  27, 200(1) -    stfd  28, 208(1) -    stfd  29, 216(1) -    stfd  30, 224(1) -    stfd  31, 232(1) - -    # hidden pointer -    stw   3, 244(1) - -    mffs  0  # load FPSCR -    stfd  0, 248(1)  # save FPSCR - -    # store RSP (pointing to context-data) in R7 -    mr  7, 1 - -    # restore RSP (pointing to context-data) from R4 -    mr  1, 4 - -    # restore CR -    lwz   0, 4(1) -    mtcr  0 - -    # restore R14 to R31 -    lwz  14, 24(1) -    lwz  15, 28(1) -    lwz  16, 32(1) -    lwz  17, 36(1) -    lwz  18, 40(1) -    lwz  19, 44(1) -    lwz  20, 48(1) -    lwz  21, 52(1) -    lwz  22, 56(1) -    lwz  23, 60(1) -    lwz  24, 64(1) -    lwz  25, 68(1) -    lwz  26, 72(1) -    lwz  27, 76(1) -    lwz  28, 80(1) -    lwz  29, 84(1) -    lwz  30, 88(1) -    lwz  31, 92(1) - -    # restore F14 to F31 -    lfd  14, 96(1) -    lfd  15, 104(1) -    lfd  16, 112(1) -    lfd  17, 120(1) -    lfd  18, 128(1) -    lfd  19, 136(1) -    lfd  20, 144(1) -    lfd  21, 152(1) -    lfd  22, 160(1) -    lfd  23, 168(1) -    lfd  24, 176(1) -    lfd  25, 184(1) -    lfd  26, 192(1) -    lfd  27, 200(1) -    lfd  28, 208(1) -    lfd  29, 216(1) -    lfd  30, 224(1) -    lfd  31, 232(1) - -    lwz  3,  244(1)  # restore hidden - -    lfd  0,  248(1)  # load FPSCR -    mtfsf  0xff, 0  # restore FPSCR - -    # copy transfer_t into ontop_fn arg registers -    mr  4, 7 -    # arg pointer already in r5 -    # hidden arg already in r3 - -    # restore CTR -    lwz   7, 0(6) -    mtctr  7 -    # restore TOC -    lwz   2, 4(6) - -    # zero in r3 indicates first jump to context-function -    cmpdi  3, 0 -    beq  use_entry_arg - -return_to_ctx: -    # restore LR -    lwz  0, 8(1) -    mtlr  0 - -    # adjust stack -    addi  1, 1, 256 - -    # jump to context -    bctr - -use_entry_arg: -    # compute return-value struct address -    # (passed has hidden arg to ontop_fn) -    addi  3, 1, 8 - -    # jump to context and update LR -    bctrl - -    # restore CTR -    lwz   7, 4(1) -    mtctr  7 -    # restore TOC -    lwz   2, 20(1) - -    # copy returned transfer_t into entry_fn arg registers -    lwz  3, 8(1) -    lwz  4, 12(1) - -    b  return_to_ctx diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_elf_gas.S deleted file mode 100644 index 46cf30d8aa5..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_elf_gas.S +++ /dev/null @@ -1,245 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    TOC    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | TOC saved |    FCTX   |    DATA   |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.file "ontop_ppc64_sysv_elf_gas.S" -.globl ontop_fcontext -.hidden ontop_fcontext -#if _CALL_ELF == 2 -	.text -	.align 2 -ontop_fcontext: -        addis   %r2, %r12, .TOC.-ontop_fcontext@ha -        addi    %r2, %r2, .TOC.-ontop_fcontext@l -        .localentry ontop_fcontext, . - ontop_fcontext -#else -	.section ".opd","aw" -	.align 3 -ontop_fcontext: -# ifdef _CALL_LINUX -        .quad   .L.ontop_fcontext,.TOC.@tocbase,0 -        .type   ontop_fcontext,@function -        .text -        .align 2 -.L.ontop_fcontext: -# else -        .hidden .ontop_fcontext -        .globl  .ontop_fcontext -        .quad   .ontop_fcontext,.TOC.@tocbase,0 -        .size   ontop_fcontext,24 -        .type   .ontop_fcontext,@function -        .text -        .align 2 -.ontop_fcontext: -# endif -#endif -    # reserve space on stack -    subi  %r1, %r1, 184 - -#if _CALL_ELF != 2 -    std  %r2,  0(%r1)  # save TOC -#endif -    std  %r14, 8(%r1)  # save R14 -    std  %r15, 16(%r1)  # save R15 -    std  %r16, 24(%r1)  # save R16 -    std  %r17, 32(%r1)  # save R17 -    std  %r18, 40(%r1)  # save R18 -    std  %r19, 48(%r1)  # save R19 -    std  %r20, 56(%r1)  # save R20 -    std  %r21, 64(%r1)  # save R21 -    std  %r22, 72(%r1)  # save R22 -    std  %r23, 80(%r1)  # save R23 -    std  %r24, 88(%r1)  # save R24 -    std  %r25, 96(%r1)  # save R25 -    std  %r26, 104(%r1)  # save R26 -    std  %r27, 112(%r1)  # save R27 -    std  %r28, 120(%r1)  # save R28 -    std  %r29, 128(%r1)  # save R29 -    std  %r30, 136(%r1)  # save R30 -    std  %r31, 144(%r1)  # save R31 -#if _CALL_ELF != 2 -    std  %r3,  152(%r1)  # save hidden -#endif - -    # save CR -    mfcr  %r0 -    std   %r0, 160(%r1) -    # save LR -    mflr  %r0 -    std   %r0, 168(%r1) -    # save LR as PC -    std   %r0, 176(%r1) - -    # store RSP (pointing to context-data) in R7 -    mr  %r7, %r1 - -#if _CALL_ELF == 2 -    # restore RSP (pointing to context-data) from R3 -    mr  %r1, %r3 -#else -    # restore RSP (pointing to context-data) from R4 -    mr  %r1, %r4 -#endif - -    ld  %r14, 8(%r1)  # restore R14 -    ld  %r15, 16(%r1)  # restore R15 -    ld  %r16, 24(%r1)  # restore R16 -    ld  %r17, 32(%r1)  # restore R17 -    ld  %r18, 40(%r1)  # restore R18 -    ld  %r19, 48(%r1)  # restore R19 -    ld  %r20, 56(%r1)  # restore R20 -    ld  %r21, 64(%r1)  # restore R21 -    ld  %r22, 72(%r1)  # restore R22 -    ld  %r23, 80(%r1)  # restore R23 -    ld  %r24, 88(%r1)  # restore R24 -    ld  %r25, 96(%r1)  # restore R25 -    ld  %r26, 104(%r1)  # restore R26 -    ld  %r27, 112(%r1)  # restore R27 -    ld  %r28, 120(%r1)  # restore R28 -    ld  %r29, 128(%r1)  # restore R29 -    ld  %r30, 136(%r1)  # restore R30 -    ld  %r31, 144(%r1)  # restore R31 -#if _CALL_ELF != 2 -    ld  %r3,  152(%r1)  # restore hidden -#endif - -    # restore CR -    ld  %r0, 160(%r1) -    mtcr  %r0 - -#if _CALL_ELF == 2 -    # restore CTR -    mtctr  %r5 - -    # store cb entrypoint in %r12, used for TOC calculation -    mr %r12, %r5 - -    # copy transfer_t into ontop_fn arg registers -    mr  %r3, %r7 -    # arg pointer already in %r4 -#else -    # copy transfer_t into ontop_fn arg registers -    mr  %r4, %r7 -    # arg pointer already in %r5 -    # hidden arg already in %r3 - -    # restore CTR -    ld   %r7, 0(%r6) -    mtctr  %r7 -    # restore TOC -    ld   %r2, 8(%r6) - -    # zero in r3 indicates first jump to context-function -    cmpdi  %r3, 0 -    beq  use_entry_arg -#endif - -return_to_ctx: -    # restore LR -    ld  %r0, 168(%r1) -    mtlr  %r0 - -    # adjust stack -    addi  %r1, %r1, 184 - -    # jump to context -    bctr - -#if _CALL_ELF == 2 -	.size ontop_fcontext, .-ontop_fcontext -#else -use_entry_arg: -    # compute return-value struct address -    # (passed has hidden arg to ontop_fn) -    addi  %r3, %r1, 8 - -    # jump to context and update LR -    bctrl - -    # restore CTR -    ld   %r7, 176(%r1) -    mtctr  %r7 -#if _CALL_ELF != 2 -    # restore TOC -    ld   %r2, 0(%r1) -#endif - -    # copy returned transfer_t into entry_fn arg registers -    ld  %r3, 8(%r1) -    ld  %r4, 16(%r1) - -    b  return_to_ctx -# ifdef _CALL_LINUX -	.size .ontop_fcontext, .-.L.ontop_fcontext -# else -	.size .ontop_fcontext, .-.ontop_fcontext -# endif -#endif - - -/* Mark that we don't need executable stack.  */ -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_macho_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_macho_gas.S deleted file mode 100644 index 5cd6359e314..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_macho_gas.S +++ /dev/null @@ -1,152 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    R13    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  |    FCTX   |    DATA   |           |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.text -.align 2 -.private_extern _ontop_fcontext -.globl _ontop_fcontext - -_ontop_fcontext: -    ; reserve space on stack -    subi  r1, r1, 184 - -    std  r14, 8(r1)  ; save R14 -    std  r15, 16(r1)  ; save R15 -    std  r16, 24(r1)  ; save R16 -    std  r17, 32(r1)  ; save R17 -    std  r18, 40(r1)  ; save R18 -    std  r19, 48(r1)  ; save R19 -    std  r20, 56(r1)  ; save R20 -    std  r21, 64(r1)  ; save R21 -    std  r22, 72(r1)  ; save R22 -    std  r23, 80(r1)  ; save R23 -    std  r24, 88(r1)  ; save R24 -    std  r25, 96(r1)  ; save R25 -    std  r26, 104(r1)  ; save R26 -    std  r27, 112(r1)  ; save R27 -    std  r28, 120(r1)  ; save R28 -    std  r29, 128(r1)  ; save R29 -    std  r30, 136(r1)  ; save R30 -    std  r31, 144(r1)  ; save R31 -    std  r3,  152(r1)  ; save hidden - -    ; save CR -    mfcr  r0 -    std   r0, 160(r1) -    ; save LR -    mflr  r0 -    std   r0, 168(r1) -    ; save LR as PC -    std   r0, 176(r1) - -    ; store RSP (pointing to context-data) in R7 -    mr  r7, r1 - -    ; restore RSP (pointing to context-data) from R4 -    mr  r1, r4 - -    ld  r14, 8(r1)  ; restore R14 -    ld  r15, 16(r1)  ; restore R15 -    ld  r16, 24(r1)  ; restore R16 -    ld  r17, 32(r1)  ; restore R17 -    ld  r18, 40(r1)  ; restore R18 -    ld  r19, 48(r1)  ; restore R19 -    ld  r20, 56(r1)  ; restore R20 -    ld  r21, 64(r1)  ; restore R21 -    ld  r22, 72(r1)  ; restore R22 -    ld  r23, 80(r1)  ; restore R23 -    ld  r24, 88(r1)  ; restore R24 -    ld  r25, 96(r1)  ; restore R25 -    ld  r26, 104(r1)  ; restore R26 -    ld  r27, 112(r1)  ; restore R27 -    ld  r28, 120(r1)  ; restore R28 -    ld  r29, 128(r1)  ; restore R29 -    ld  r30, 136(r1)  ; restore R30 -    ld  r31, 144(r1)  ; restore R31 -    ld  r4,  152(r1)  ; restore hidden - -    ; restore CR -    ld  r0, 160(r1) -    mtcr  r0 -    ; restore LR -    ld  r0, 168(r1) -    mtlr  r0 -    ; ignore PC - -    ; adjust stack -    addi  r1, r1, 184 - -    ; return transfer_t -    std  r7, 0(r4) -    std  r5, 8(r4) - -    ; restore CTR -    mtctr  r6 - -    ; jump to context -    bctr diff --git a/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_xcoff_gas.S b/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_xcoff_gas.S deleted file mode 100644 index 546b1b2da8e..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_ppc64_sysv_xcoff_gas.S +++ /dev/null @@ -1,187 +0,0 @@ -/* -            Copyright Oliver Kowalke 2009. -   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) -*/ - -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |  0  |  4  |  8  |  12 |  16 |  20 |  24 |  28 |  * - *  -------------------------------------------------  * - *  |    TOC    |    R14    |    R15    |    R16    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |  32 |  36 |  40 |  44 |  48 |  52 |  56 |  60 |  * - *  -------------------------------------------------  * - *  |    R17    |    R18    |     R19   |    R20    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |  64 |  68 |  72 |  76 |  80 |  84 |  88 |  92 |  * - *  -------------------------------------------------  * - *  |    R21    |    R22    |    R23    |    R24    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  |  96 | 100 | 104 | 108 | 112 | 116 | 120 | 124 |  * - *  -------------------------------------------------  * - *  |    R25    |    R26    |    R27    |    R28    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 128 | 132 | 136 | 140 | 144 | 148 | 152 | 156 |  * - *  -------------------------------------------------  * - *  |    R29    |    R30    |    R31    |   hidden  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  | 160 | 164 | 168 | 172 | 176 | 180 | 184 | 188 |  * - *  -------------------------------------------------  * - *  |     CR    |     LR    |     PC    | back-chain|  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 |  51 |  52 |  53 |  54 |  55 |  * - *  -------------------------------------------------  * - *  | 192 | 196 | 200 | 204 | 208 | 212 | 216 | 220 |  * - *  -------------------------------------------------  * - *  |  cr saved |  lr saved |  compiler |   linker  |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  56 |  57 |  58 |  59 |  60 |  61 |  62 |  63 |  * - *  -------------------------------------------------  * - *  | 224 | 228 | 232 | 236 | 240 | 244 | 248 | 252 |  * - *  -------------------------------------------------  * - *  | TOC saved |    FCTX   |    DATA   |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -    .file "ontop_ppc64_sysv_xcoff_gas.S" -    .toc -    .csect .text[PR], 5 -    .align 2 -    .globl  ontop_fcontext[DS] -    .globl .ontop_fcontext -    .csect  ontop_fcontext[DS], 3 -ontop_fcontext: -    .llong .ontop_fcontext[PR], TOC[tc0], 0 -    .csect .text[PR], 5 -.ontop_fcontext: -    # reserve space on stack -    subi  1, 1, 184 - -    std  2, 0(1)  # save TOC -    std  14, 8(1)  # save R14 -    std  15, 16(1)  # save R15 -    std  16, 24(1)  # save R16 -    std  17, 32(1)  # save R17 -    std  18, 40(1)  # save R18 -    std  19, 48(1)  # save R19 -    std  20, 56(1)  # save R20 -    std  21, 64(1)  # save R21 -    std  22, 72(1)  # save R22 -    std  23, 80(1)  # save R23 -    std  24, 88(1)  # save R24 -    std  25, 96(1)  # save R25 -    std  26, 104(1)  # save R26 -    std  27, 112(1)  # save R27 -    std  28, 120(1)  # save R28 -    std  29, 128(1)  # save R29 -    std  30, 136(1)  # save R30 -    std  31, 144(1)  # save R31 -    std  3,  152(1)  # save hidden - -    # save CR -    mfcr  0 -    std  0, 160(1) -    # save LR -    mflr  0 -    std  0, 168(1) -    # save LR as PC -    std  0, 176(1) - -    # store RSP (pointing to context-data) in R7 -    mr  7, 1 - -    # restore RSP (pointing to context-data) from R4 -    mr  1, 4 - -    ld  14, 8(1)  # restore R14 -    ld  15, 16(1)  # restore R15 -    ld  16, 24(1)  # restore R16 -    ld  17, 32(1)  # restore R17 -    ld  18, 40(1)  # restore R18 -    ld  19, 48(1)  # restore R19 -    ld  20, 56(1)  # restore R20 -    ld  21, 64(1)  # restore R21 -    ld  22, 72(1)  # restore R22 -    ld  23, 80(1)  # restore R23 -    ld  24, 88(1)  # restore R24 -    ld  25, 96(1)  # restore R25 -    ld  26, 104(1)  # restore R26 -    ld  27, 112(1)  # restore R27 -    ld  28, 120(1)  # restore R28 -    ld  29, 128(1)  # restore R29 -    ld  30, 136(1)  # restore R30 -    ld  31, 144(1)  # restore R31 -    ld  3,  152(1)  # restore hidden - -    # restore CR -    ld  0, 160(1) -    mtcr  0 - -    # copy transfer_t into ontop_fn arg registers -    mr  4, 7 -    # arg pointer already in r5 -    # hidden arg already in r3 - -    # restore CTR -    ld   7, 0(6) -    mtctr  7 -    # restore TOC -    ld   2, 8(6) - -    # zero in r3 indicates first jump to context-function -    cmpdi  3, 0 -    beq  use_entry_arg - -return_to_ctx: -    # restore LR -    ld  0, 168(1) -    mtlr  0 - -    # adjust stack -    addi  1, 1, 184 - -    # jump to context -    bctr - -use_entry_arg: -    # compute return-value struct address -    # (passed has hidden arg to ontop_fn) -    addi  3, 1, 8 - -    # jump to context and update LR -    bctrl - -    # restore CTR -    ld   7, 176(1) -    mtctr  7 -    # restore TOC -    ld   2, 0(1) - -    # copy returned transfer_t into entry_fn arg registers -    ld  3, 8(1) -    ld  4, 16(1) - -    b  return_to_ctx diff --git a/contrib/restricted/boost/context/src/asm/ontop_riscv64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_riscv64_sysv_elf_gas.S deleted file mode 100644 index f57d1f3996b..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_riscv64_sysv_elf_gas.S +++ /dev/null @@ -1,150 +0,0 @@ -/* -   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) -*/ -/******************************************************* - *                                                     * - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  | 0x0 | 0x4 | 0x8 | 0xc | 0x10| 0x14| 0x18| 0x1c|  * - *  -------------------------------------------------  * - *  |    fs0    |    fs1    |    fs2    |    fs3    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  | 0x20| 0x24| 0x28| 0x2c| 0x30| 0x34| 0x38| 0x3c|  * - *  -------------------------------------------------  * - *  |    fs4    |    fs5    |    fs6    |    fs7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  | 0x40| 0x44| 0x48| 0x4c| 0x50| 0x54| 0x58| 0x5c|  * - *  -------------------------------------------------  * - *  |    fs8    |    fs9    |    fs10   |    fs11   |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  * - *  -------------------------------------------------  * - *  | 0x60| 0x64| 0x68| 0x6c| 0x70| 0x74| 0x78| 0x7c|  * - *  -------------------------------------------------  * - *  |    s0     |    s1     |    s2     |    s3     |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  | 0x80| 0x84| 0x88| 0x8c| 0x90| 0x94| 0x98| 0x9c|  * - *  -------------------------------------------------  * - *  |    s4     |    s5     |    s6     |     s7    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 | 43  |  44 | 45  |  46 | 47  |  * - *  -------------------------------------------------  * - *  | 0xa0| 0xa4| 0xa8| 0xac| 0xb0| 0xb4| 0xb8| 0xbc|  * - *  -------------------------------------------------  * - *  |     s8    |     s9    |    s10    |    s11    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  48 |  49 |  50 | 51  |     |     |     |     |  * - *  -------------------------------------------------  * - *  | 0xc0| 0xc4| 0xc8| 0xcc|     |     |     |     |  * - *  -------------------------------------------------  * - *  |     ra    |     pc    |           |           |  * - *  -------------------------------------------------  * - *                                                     * - *******************************************************/ - -.file "ontop_riscv64_sysv_elf_gas.S" -.text -.align  1 -.global ontop_fcontext -.hidden ontop_fcontext -.type   ontop_fcontext, %function -ontop_fcontext: -    # prepare stack for GP + FPU -    addi  sp, sp, -0xd0 - -    # save fs0 - fs11 -    fsd  fs0, 0x00(sp) -    fsd  fs1, 0x08(sp) -    fsd  fs2, 0x10(sp) -    fsd  fs3, 0x18(sp) -    fsd  fs4, 0x20(sp) -    fsd  fs5, 0x28(sp) -    fsd  fs6, 0x30(sp) -    fsd  fs7, 0x38(sp) -    fsd  fs8, 0x40(sp) -    fsd  fs9, 0x48(sp) -    fsd  fs10, 0x50(sp) -    fsd  fs11, 0x58(sp) - -    # save s0-s11, ra -    sd  s0, 0x60(sp) -    sd  s1, 0x68(sp) -    sd  s2, 0x70(sp) -    sd  s3, 0x78(sp) -    sd  s4, 0x80(sp) -    sd  s5, 0x88(sp) -    sd  s6, 0x90(sp) -    sd  s7, 0x98(sp) -    sd  s8, 0xa0(sp) -    sd  s9, 0xa8(sp) -    sd  s10, 0xb0(sp) -    sd  s11, 0xb8(sp) -    sd  ra, 0xc0(sp) - -    # save RA as PC -    sd  ra, 0xc8(sp) - -    # store SP (pointing to context-data) in A3 -    mv  a3, sp - -    # restore SP (pointing to context-data) from A0 -    mv  sp, a0 - -    # load fs0 - fs11 -    fld  fs0, 0x00(sp) -    fld  fs1, 0x08(sp) -    fld  fs2, 0x10(sp) -    fld  fs3, 0x18(sp) -    fld  fs4, 0x20(sp) -    fld  fs5, 0x28(sp) -    fld  fs6, 0x30(sp) -    fld  fs7, 0x38(sp) -    fld  fs8, 0x40(sp) -    fld  fs9, 0x48(sp) -    fld  fs10, 0x50(sp) -    fld  fs11, 0x58(sp) - -    # load s0-s11,ra -    ld  s0, 0x60(sp) -    ld  s1, 0x68(sp) -    ld  s2, 0x70(sp) -    ld  s3, 0x78(sp) -    ld  s4, 0x80(sp) -    ld  s5, 0x88(sp) -    ld  s6, 0x90(sp) -    ld  s7, 0x98(sp) -    ld  s8, 0xa0(sp) -    ld  s9, 0xa8(sp) -    ld  s10, 0xb0(sp) -    ld  s11, 0xb8(sp) -    ld  ra, 0xc0(sp) - -    # return transfer_t from jump -    # pass transfer_t as first arg in context function -    # a0 == FCTX, a1 == DATA -    mv a0, a3 - -    # skip pc -    # restore stack from GP + FPU -    addi  sp, sp, 0xd0 - -    # jump to ontop-function -    jr a2 -.size   ontop_fcontext,.-ontop_fcontext -# Mark that we don't need executable stack. -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_s390x_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_s390x_sysv_elf_gas.S deleted file mode 100644 index 3a0d864e9cb..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_s390x_sysv_elf_gas.S +++ /dev/null @@ -1,146 +0,0 @@ -/******************************************************* - *  -------------------------------------------------  * - *  |  0  |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  * - *  -------------------------------------------------  * - *  |     0     |     8     |    16     |    24     |  * - *  -------------------------------------------------  * - *  |   t.fctx  |   t.data  |    r2     |    r6     |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  8  |  9  |  10 |  11 |  12 |  13 |  14 |  15 |  * - *  -------------------------------------------------  * - *  |     32    |    40     |     48    |     56    |  * - *  -------------------------------------------------  * - *  |     r7    |     r8    |     r9    |    r10    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  16 |  17 |  18 |  19 |  20 |  21 |  22 |  23 |  * - *  -------------------------------------------------  * - *  |     64    |     72    |     80    |     88    |  * - *  -------------------------------------------------  * - *  |    r11    |    r12    |    r13    |    r14    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  24 |  25 |  26 |  27 |  28 | 29  |  30 |  31 |  * - *  -------------------------------------------------  * - *  |     96    |    104    |    112    |    120    |  * - *  -------------------------------------------------  * - *  |     f8    |     f9    |    f10    |    f11    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  32 |  33 |  34 |  35 |  36 |  37 |  38 |  39 |  * - *  -------------------------------------------------  * - *  |    128    |    136    |    144    |    152    |  * - *  -------------------------------------------------  * - *  |    f12    |    f13    |    f14    |    f15    |  * - *  -------------------------------------------------  * - *  -------------------------------------------------  * - *  |  40 |  41 |  42 |  43 |  44 |  45 |  46 |  47 |  * - *  -------------------------------------------------  * - *  |    160    |    168    |    176    |           |  * - *  -------------------------------------------------  * - *  |    fpc    |     pc    |           |           |  * - *  -------------------------------------------------  * - *******************************************************/ - -.text -.align  8 -.global ontop_fcontext -.hidden ontop_fcontext -.type   ontop_fcontext, @function - -#define ARG_OFFSET         0 -#define GR_OFFSET          16 -#define R14_OFFSET         88 -#define FP_OFFSET          96 -#define FPC_OFFSET         160 -#define PC_OFFSET          168 -#define CONTEXT_SIZE       176 - -/* - -typedef void*   fcontext_t; - -struct transfer_t { -   fcontext_t  fctx; -   void    *   data; -}; - -transfer_t ontop_fcontext( fcontext_t const to, -			   void * vp, -			   transfer_t (* fn)( transfer_t) ); - -Incoming args -r2 - Hidden argument to the location where the return transfer_t needs to be returned -r3 - Target context -r4 - Data pointer -r5 - Function to be executed - -This implementation assumes that ontop_fcontext will never be called with target contexts -created via make_fcontext. - -*/ - -ontop_fcontext: -	/* Reserve stack space to store the current context.  */ -	aghi	%r15,-CONTEXT_SIZE - -	/* Save the argument register holding the location of the return value.  */ -	stg	%r2,GR_OFFSET(%r15) - -	/* Save the call-saved general purpose registers.  */ -	stmg	%r6,%r14,GR_OFFSET+8(%r15) - -	/* Save call-saved floating point registers.  */ -	std	%f8,FP_OFFSET(%r15) -	std	%f9,FP_OFFSET+8(%r15) -	std	%f10,FP_OFFSET+16(%r15) -	std	%f11,FP_OFFSET+24(%r15) -	std	%f12,FP_OFFSET+32(%r15) -	std	%f13,FP_OFFSET+40(%r15) -	std	%f14,FP_OFFSET+48(%r15) -	std	%f15,FP_OFFSET+56(%r15) - -	/* Save the return address as current pc.  */ -	stg	%r14,PC_OFFSET(%r15) - -	/* Save the floating point control register.  */ -	stfpc   FPC_OFFSET(%r15) - -	/* Backup the stack pointer pointing to the old context-data into r1.  */ -	lgr	%r1,%r15 - -	/* Load the new context pointer as stack pointer.  */ -	lgr	%r15,%r3 - -	/* Restore the call-saved GPRs from the new context.  */ -	lmg	%r6,%r14,GR_OFFSET+8(%r15) - -	/* Restore call-saved floating point registers.  */ -	ld	%f8,FP_OFFSET(%r15) -	ld	%f9,FP_OFFSET+8(%r15) -	ld	%f10,FP_OFFSET+16(%r15) -	ld	%f11,FP_OFFSET+24(%r15) -	ld	%f12,FP_OFFSET+32(%r15) -	ld	%f13,FP_OFFSET+40(%r15) -	ld	%f14,FP_OFFSET+48(%r15) -	ld	%f15,FP_OFFSET+56(%r15) - -	/* Load the floating point control register.  */ -	lfpc   FPC_OFFSET(%r15) - -	/* Store the transfer_t values located in the saved context.  */ -	stg	%r1,0(%r1)	       /* transfer_t.fctx = old context */ -	stg	%r4,8(%r1)             /* transfer_t.data = data */ - -	/* Set up the arguments for the target function.  */ -	lg	%r2,GR_OFFSET(%r15) -	lgr	%r3,%r1 - -	/* Deallocate the context.  */ -	aghi	%r15,CONTEXT_SIZE - -	br	%r5 - -.size   ontop_fcontext,.-ontop_fcontext -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/ontop_sparc64_sysv_elf_gas.S b/contrib/restricted/boost/context/src/asm/ontop_sparc64_sysv_elf_gas.S deleted file mode 100644 index 2fcdb891056..00000000000 --- a/contrib/restricted/boost/context/src/asm/ontop_sparc64_sysv_elf_gas.S +++ /dev/null @@ -1,50 +0,0 @@ -/* -       Copyright Claudio Jeker 2024 -   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) -*/ - -/* - * transfer_t ontop_fcontext(fcontext_t const to, void *vp, transfer_t (*fn)(transfer_t)); - */ -#define CC64FSZ 176 -#define BIAS 2047 -#define SP 128 -#define I7 136 - -.file "ontop_sparc64_sysv_elf_gas.S" -.text -.align  4 -.global ontop_fcontext -.type   ontop_fcontext, %function -ontop_fcontext: -	# prepare stack -	save	%sp, -CC64FSZ, %sp - -	# store framepointer and return address in slots reserved -	# for arguments -	stx %fp, [%sp + BIAS + SP] -	stx %i7, [%sp + BIAS + I7] -	mov %sp, %o0 -	# force flush register windows to stack and with that save context -	flushw -	# get SP (pointing to new context-data) from %i0 param -	mov %i0, %sp -	# load framepointer and return address from context -	ldx [%sp + BIAS + SP], %fp -	ldx [%sp + BIAS + I7], %i7 - -	# ontop_fcontext requires to directly call a function on top of the -	# current frame so restore register window before doing the jump -	# to the context function which then is in %o2. Do not clobber -	# %o7 in the jump so that (*fn)() returns to that address. -	restore %o0, %g0, %o0 -	# restore old %sp (pointing to old context-data) in %o0 -	# *data stored in %o1 was not modified - -	jmpl %o2, %g0 -	 nop -.size	jump_fcontext,.-jump_fcontext -# Mark that we don't need executable stack. -.section .note.GNU-stack,"",%progbits diff --git a/contrib/restricted/boost/context/src/asm/tail_ontop_ppc32_sysv.cpp b/contrib/restricted/boost/context/src/asm/tail_ontop_ppc32_sysv.cpp deleted file mode 100644 index 348608460f8..00000000000 --- a/contrib/restricted/boost/context/src/asm/tail_ontop_ppc32_sysv.cpp +++ /dev/null @@ -1,18 +0,0 @@ - -//          Copyright Oliver Kowalke 2009. -// 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) - -#include <boost/context/detail/fcontext.hpp> - -using boost::context::detail::fcontext_t; -using boost::context::detail::transfer_t; - -// This C++ tail of ontop_fcontext() allocates transfer_t{ from, vp } -// on the stack.  If fn() throws a C++ exception, then the C++ runtime -// must remove this tail's stack frame. -extern "C" transfer_t -ontop_fcontext_tail( int ignore, void * vp, transfer_t (* fn)(transfer_t), fcontext_t const from) { -    return fn( transfer_t{ from, vp }); -}  | 
