bridges/Library_cpp_uno.mk | 18 - bridges/source/cpp_uno/gcc3_ios/cpp2uno.cxx | 2 bridges/source/cpp_uno/gcc3_ios/generate-snippets.pl | 55 ----- bridges/source/cpp_uno/gcc3_ios/ios64_helper.s | 205 ++++++++++++++++++- 4 files changed, 206 insertions(+), 74 deletions(-)
New commits: commit 02f6aa7355d77842caa0416217e0a572144467c3 Author: jan Iversen <j...@libreoffice.org> Date: Sun Mar 11 09:19:39 2018 +0100 iOS, removed perl script in bridges The perl script just generated static asm code, this code is now included directly in ios64_helper.s Change-Id: I3ebc6f85865287e1a1d11f82be72fc2407bcb40f diff --git a/bridges/Library_cpp_uno.mk b/bridges/Library_cpp_uno.mk index 4c6d7ec95046..902b735b3d65 100644 --- a/bridges/Library_cpp_uno.mk +++ b/bridges/Library_cpp_uno.mk @@ -26,24 +26,6 @@ bridges_SELECTED_BRIDGE := gcc3_ios bridge_noopt_objects := cpp2uno except uno2cpp bridge_asm_objects := ios64_helper -#HACK -$(eval $(call gb_Library_set_include,$(gb_CPPU_ENV)_uno,\ - $$(INCLUDE) \ - -I $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios) \ -)) - -$(SRCDIR)/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s: \ - $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios)/codesnippets.S - -$(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios)/codesnippets.S: \ - $(SRCDIR)/bridges/source/cpp_uno/gcc3_ios/generate-snippets.pl \ - | $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios)/.dir - $(PERL) $< > $@ - -$(call gb_Library_get_clean_target,$(gb_CPPU_ENV)_uno) : - rm -f $(WORKDIR)/CustomTarget/bridges/source/cpp_uno/gcc3_ios/codesnippets.S - - else ifeq ($(CPUNAME),AARCH64) ifneq ($(filter ANDROID DRAGONFLY FREEBSD LINUX NETBSD OPENBSD,$(OS)),) diff --git a/bridges/source/cpp_uno/gcc3_ios/generate-snippets.pl b/bridges/source/cpp_uno/gcc3_ios/generate-snippets.pl deleted file mode 100755 index 3a3b0a3fbb1a..000000000000 --- a/bridges/source/cpp_uno/gcc3_ios/generate-snippets.pl +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/perl -w # -*- tab-width: 4; indent-tabs-mode: nil; cperl-indent-level: 4 -*- -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -my $nFunIndexes = 8; -my $nVtableOffsets = 4; - -sub gen_arm ($$) -{ - my ($funIndex, $vtableOffset) = @_; - printf ("codeSnippet_%08x_%d:\n", $funIndex, $vtableOffset); - printf (" adr x15, .+8\n"); - printf (" b _privateSnippetExecutor\n"); - printf (" .long %#08x\n", $funIndex); - printf (" .long %d\n", $vtableOffset); -} - -printf (".text\n"); -printf ("\n"); -printf (" .align 4\n"); -printf ("\n"); - -foreach my $funIndex (0 .. $nFunIndexes-1) -{ - foreach my $vtableOffset (0 .. $nVtableOffsets-1) - { - gen_arm ($funIndex, $vtableOffset); - } -} - -printf (" .globl _nFunIndexes\n"); -printf ("_nFunIndexes:\n"); -printf (" .long %d\n", $nFunIndexes); - -printf (" .globl _nVtableOffsets\n"); -printf ("_nVtableOffsets:\n"); -printf (" .long %d\n", $nVtableOffsets); - -printf (" .globl _codeSnippets\n"); -printf ("_codeSnippets:\n"); - -foreach my $funIndex (0 .. $nFunIndexes-1) -{ - foreach my $vtableOffset (0 .. $nVtableOffsets-1) - { - printf (" .long codeSnippet_%08x_%d - _codeSnippets\n", $funIndex, $vtableOffset); - } -} - -# vim:set shiftwidth=4 softtabstop=4 expandtab: diff --git a/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s b/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s index 51e4d160dafe..6e6e8c74b347 100644 --- a/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s +++ b/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s @@ -16,8 +16,211 @@ // except in compliance with the License. You may obtain a copy of // the License at http://www.apache.org/licenses/LICENSE-2.0 . // + .text + .align 4 + +codeSnippet_00000000_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 00000000 + .long 0 +codeSnippet_00000000_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 00000000 + .long 1 +codeSnippet_00000000_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 00000000 + .long 2 +codeSnippet_00000000_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 00000000 + .long 3 +codeSnippet_00000001_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000001 + .long 0 +codeSnippet_00000001_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000001 + .long 1 +codeSnippet_00000001_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000001 + .long 2 +codeSnippet_00000001_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000001 + .long 3 +codeSnippet_00000002_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000002 + .long 0 +codeSnippet_00000002_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000002 + .long 1 +codeSnippet_00000002_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000002 + .long 2 +codeSnippet_00000002_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000002 + .long 3 +codeSnippet_00000003_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000003 + .long 0 +codeSnippet_00000003_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000003 + .long 1 +codeSnippet_00000003_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000003 + .long 2 +codeSnippet_00000003_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000003 + .long 3 +codeSnippet_00000004_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000004 + .long 0 +codeSnippet_00000004_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000004 + .long 1 +codeSnippet_00000004_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000004 + .long 2 +codeSnippet_00000004_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000004 + .long 3 +codeSnippet_00000005_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000005 + .long 0 +codeSnippet_00000005_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000005 + .long 1 +codeSnippet_00000005_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000005 + .long 2 +codeSnippet_00000005_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000005 + .long 3 +codeSnippet_00000006_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000006 + .long 0 +codeSnippet_00000006_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000006 + .long 1 +codeSnippet_00000006_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000006 + .long 2 +codeSnippet_00000006_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000006 + .long 3 +codeSnippet_00000007_0: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000007 + .long 0 +codeSnippet_00000007_1: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000007 + .long 1 +codeSnippet_00000007_2: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000007 + .long 2 +codeSnippet_00000007_3: + adr x15, .+8 + b _privateSnippetExecutor + .long 0x000007 + .long 3 + .globl _nFunIndexes +_nFunIndexes: + .long 8 + .globl _nVtableOffsets +_nVtableOffsets: + .long 4 + .globl _codeSnippets +_codeSnippets: + .long codeSnippet_00000000_0 - _codeSnippets + .long codeSnippet_00000000_1 - _codeSnippets + .long codeSnippet_00000000_2 - _codeSnippets + .long codeSnippet_00000000_3 - _codeSnippets + .long codeSnippet_00000001_0 - _codeSnippets + .long codeSnippet_00000001_1 - _codeSnippets + .long codeSnippet_00000001_2 - _codeSnippets + .long codeSnippet_00000001_3 - _codeSnippets + .long codeSnippet_00000002_0 - _codeSnippets + .long codeSnippet_00000002_1 - _codeSnippets + .long codeSnippet_00000002_2 - _codeSnippets + .long codeSnippet_00000002_3 - _codeSnippets + .long codeSnippet_00000003_0 - _codeSnippets + .long codeSnippet_00000003_1 - _codeSnippets + .long codeSnippet_00000003_2 - _codeSnippets + .long codeSnippet_00000003_3 - _codeSnippets + .long codeSnippet_00000004_0 - _codeSnippets + .long codeSnippet_00000004_1 - _codeSnippets + .long codeSnippet_00000004_2 - _codeSnippets + .long codeSnippet_00000004_3 - _codeSnippets + .long codeSnippet_00000005_0 - _codeSnippets + .long codeSnippet_00000005_1 - _codeSnippets + .long codeSnippet_00000005_2 - _codeSnippets + .long codeSnippet_00000005_3 - _codeSnippets + .long codeSnippet_00000006_0 - _codeSnippets + .long codeSnippet_00000006_1 - _codeSnippets + .long codeSnippet_00000006_2 - _codeSnippets + .long codeSnippet_00000006_3 - _codeSnippets + .long codeSnippet_00000007_0 - _codeSnippets + .long codeSnippet_00000007_1 - _codeSnippets + .long codeSnippet_00000007_2 - _codeSnippets + .long codeSnippet_00000007_3 - _codeSnippets + -#include "codesnippets.S" .text .align 4 commit dc275890d62cb8f404fe6bed5c37f90835b53b0f Author: jan Iversen <j...@libreoffice.org> Date: Sun Mar 11 09:17:05 2018 +0100 iOS, typo in function decl. Change-Id: I269f5323ed0f984cfe9d28636a9cae84a863e7a6 diff --git a/bridges/source/cpp_uno/gcc3_ios/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_ios/cpp2uno.cxx index 0ca1401ba960..8008d3a2193e 100644 --- a/bridges/source/cpp_uno/gcc3_ios/cpp2uno.cxx +++ b/bridges/source/cpp_uno/gcc3_ios/cpp2uno.cxx @@ -512,11 +512,13 @@ bridges::cpp_uno::shared::VtableFactory::initializeBlock( unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( Slot ** slots, unsigned char * code, + sal_PtrDiff writetoexecdiff, typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, sal_Int32 functionCount, sal_Int32 vtableOffset) { + (void)writetoexecdiff; (*slots) -= functionCount; Slot * s = *slots; for (sal_Int32 i = 0; i < type->nMembers; ++i) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits