summaryrefslogtreecommitdiff
path: root/bridges/source
AgeCommit message (Collapse)AuthorFilesLines
2018-05-15loplugin:stringconcat, loplugin:sallogareas (clang-cl)Stephan Bergmann1-5/+5
("bridges.win64" isn't more useful than plain "bridges" here, as each platform uses only one bridges/source/cpp_uno/ sub-dir, anyway) Change-Id: Ic8c2af892cdfad98e10d43532b3bf3c892555446 Reviewed-on: https://gerrit.libreoffice.org/54351 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-05-07bridges (win32/64): Log method callsSamuel Mehrbrodt2-0/+17
Change-Id: I5177dd4fbc8f1b638ceff14c5d88d19fff8076a3 Reviewed-on: https://gerrit.libreoffice.org/53779 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
2018-04-16loplugin:useuniqueptr in bridgesNoel Grandin2-9/+9
Change-Id: I7bf75ffafa63ec88e89192ed32880675c9ae1d61 Reviewed-on: https://gerrit.libreoffice.org/52883 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-10Adapt remaining cpp_uno bridges to #i114635#Stephan Bergmann18-88/+379
..."C++ UNO bridge should convert non-UNO exceptions into RuntimeException" (<https://bz.apache.org/ooo/show_bug.cgi?id=114635>), see <https://lists.freedesktop.org/archives/libreoffice/2018-April/079985.html> "Re: CppunitTest_sw_filters_test failing on x86 Linux, std::exception -> uno::RuntimeException". (The msvc_win32_{intel,x86-64} versions already handle non-UNO exceptions in their msc{i,x}_filterCppException functions, in a different way.) Change-Id: Ie359affed6831d16be0de3e3ff065484e28bd9c3 Reviewed-on: https://gerrit.libreoffice.org/52665 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-03-20iOS, simplified assemblerjan Iversen2-34/+17
RC of cpp_vtable_call is never used in the asm part, so remove it. Change-Id: Iabda12541fbb574a21395a8430c52a3e9f892947
2018-03-17iOS, balanced return stackjan Iversen1-21/+19
stack balenced for entering and exiting _privateSnippetExecutor Change-Id: I381c487d3412a39b113e9725807fd018b2b4036a
2018-03-17iOS update unwind abi to v. 26jan Iversen1-7/+9
Change-Id: Id149b6a17dec8e6030d78e235c7451b2244152d1
2018-03-16iOS, solved call stack problem.jan Iversen2-6/+9
Stack was not corrupted, but the call stack was not intact when passing the assembler code. Change-Id: If07909dce2b4a73634a130e5f50e84312115b845
2018-03-16iOS, added description of __cxa_throwjan Iversen1-0/+3
Change-Id: I6a537957528a0d2de989b347bde1167e21544236
2018-03-15iOS, move assembler constants to C++jan Iversen2-13/+5
Change-Id: Iad94a2e2e55bb158d2ac42e3a67a6d94f84ffedd
2018-03-15iOS, simplified bridge assembler code.jan Iversen2-160/+134
Use x14 and x15 as function and offset instead of having x15 as a pointer to 2 words. Change-Id: I1cb3af4e86e3abe1b56fba2509eda31af0435885
2018-03-15iOS, solved corrupted stack in cpp -> unojan Iversen2-36/+38
Solved problem in assembler code, so the call chain is correct. There are still something missing for uno to work correctly Change-Id: Ieb3b3d6b15153576159e07b52ced0efedd135713
2018-03-11iOS, calling cpp_vtable_call does not corrupt stackjan Iversen1-2/+2
Changing bl -> b (jump long to jump) allowed cpp_vtable_call to work without corrumping the stack. However return still corrumpts the stack. Change-Id: I3437a73139b65af13dcf6fa0c959bb1c847564b9
2018-03-11iOS, moved privateSnippetExecutor from asm to C function.jan Iversen2-44/+36
move asm code to C as first step towards reducing the asm code. Since iOS does not permit java/python or anything else than the compiled C++ code, the throw should be done simpler. Apart from that this is the first step in solving a stack corruption problem in the throw code Change-Id: I4f3d3a3ba3f55fb46131d9a8eeb0deebf179d95f
2018-03-11iOS, removed unneeded #ifdef arm64jan Iversen1-3/+0
Change-Id: Ie568c461ae834b33b9220c4b9fb42ec66b5e7ce0
2018-03-11iOS, revert bed135e02bf7db2ef8c29747bbf79f26da71e9cajan Iversen1-2/+0
using USE_DOUBLE_MMAP worked well on the device, but caused problems with the simulator, that depends on the GCC3_MAC* implementation. Change-Id: Ifbc1d48b3642567029c5271054a545eaacaf18ed
2018-03-11iOS, removed perl script in bridgesjan Iversen2-56/+204
The perl script just generated static asm code, this code is now included directly in ios64_helper.s Change-Id: I3ebc6f85865287e1a1d11f82be72fc2407bcb40f
2018-03-11iOS, typo in function decl.jan Iversen1-0/+2
Change-Id: I269f5323ed0f984cfe9d28636a9cae84a863e7a6
2018-03-11bridges,iOS removed suport for x86 and arm.jan Iversen2-473/+0
Only arm64 is supported, code is more readable Change-Id: I6940b0d03dc26c9c8f10c1cb105a7564471f2ca5
2018-03-05Make LibreOffice buildable on Haiku.Kacper Kasper1-1/+1
* Obviously VCL wiring is missing, but most components do build. Change-Id: Ie853ada1423a8f4c2b647be59cd47a7730c42978 Reviewed-on: https://gerrit.libreoffice.org/50293 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
2018-02-20iOS, remove throw definitionjan Iversen1-6/+0
clean cpp_uno part. Change-Id: Ief08e4cf596b375243ae215d8dc2e1cdb5830ac1
2018-02-17iOS, readded perl script to generate codesnippetsjan Iversen1-2804/+21
Change-Id: Ie9f3aa8057e9b50beedf47ff892188cf3b362194
2018-02-15iOS, add old snippet script.jan Iversen1-0/+114
We need to check if the script generated the same code always. Looks like nFunIndexes is never changed. Change-Id: Ic247cccbf1e4a75e6a0acf5807fdcf84bfcf4cb3
2018-02-15iOS, update to original filesjan Iversen3-3/+16
Update to old files (from Tor in 2013) to prepare for generate. Change-Id: I832a242b7b91179e9c269fa9e48a1698aa2f2a66
2018-02-15iOS, reduce arm64 files to actually neededjan Iversen6-724/+0
Still comparing the "old" gcc3_ios_arm with the new one, in order to make the asm code work. Change-Id: I3a2fdfc1891a6a4d7065917f5ef8bd19c49b3987
2018-02-14iOS, add gcc3 helper for ARM64jan Iversen2-964/+0
Change-Id: Iad8cfd72803864bd1c8a5d01c74e1f856c27685d
2018-01-31bridges: MSVC: pragma warning: make more specific, remove obsoleteMike Kaganski7-16/+0
Change-Id: Ib13f198e5941a33a9a8d1091c8ceb48e273f00cc Reviewed-on: https://gerrit.libreoffice.org/48949 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-01-25Fix typosAndrea Gelmini5-6/+6
Change-Id: I13acf050d83099be8874514688936bb4ddbb1a26 Reviewed-on: https://gerrit.libreoffice.org/48543 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-01-23More loplugin:cstylecast on WindowsStephan Bergmann2-2/+2
Automatic rewrite (of loplugin:cstylecast and loplugin:unnecessaryparen) after cab0427cadddb3aaf1349c66f2fa13a4234ba4b2 "Enable loplugin:cstylecast for some more cases" and a409d32e7f6fc09e041079d6dbc3c927497adfed "More loplugin:cstylecast" Change-Id: Ib3355159dd08333e1b7a8d091caf2069cdcc7862 Reviewed-on: https://gerrit.libreoffice.org/48317 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-20More loplugin:cstylecast on macOSStephan Bergmann1-1/+1
Automatic rewrite (of loplugin:cstylecast and loplugin:unnecessaryparen) after cab0427cadddb3aaf1349c66f2fa13a4234ba4b2 "Enable loplugin:cstylecast for some more cases" and a409d32e7f6fc09e041079d6dbc3c927497adfed "More loplugin:cstylecast" Change-Id: Iff4877e8a42804c952c48c13332caf0a83c92870 Reviewed-on: https://gerrit.libreoffice.org/48216 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-19SAL_W32 is just an alias for _WIN32Stephan Bergmann1-4/+4
...so consistently use the latter instead of the former Change-Id: I144d5e7c472632f93b2258461510346bc85892d9 Reviewed-on: https://gerrit.libreoffice.org/48135 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-18enable c++17 for android again after boost auto_ptr has a workaroundChristian Lohmaier2-2/+2
see 90d2155912bcee40377620d4836726041a72d537 for boost fix and see effe6b3d84302afce3d5095e4f376e7e3bf669e0 for bridges fix for mac Change-Id: Ic6209ce0927dafd39763ef0b2fabbcaa7abf743f Reviewed-on: https://gerrit.libreoffice.org/46002 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins <ci@libreoffice.org>
2018-01-18android: use unified headers and llvm-c++ STL (x86) with NDK 16Christian Lohmaier4-16/+54
gnustl (and others) are to be removed in future versions of the ndk also bump gradle and build-tools to current versions along with it arm unfortunately crashes with llvm-c++, so keep with gnustl for now/fix that later Change-Id: Ic794c3293b599b77ec48096bf3283a99c09cbb79 Reviewed-on: https://gerrit.libreoffice.org/45163 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2018-01-16Fix typosAndrea Gelmini2-2/+2
Change-Id: I078626eaa3155cc429320cc8c1532003b382b22a Reviewed-on: https://gerrit.libreoffice.org/47855 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2018-01-12More loplugin:cstylecast: bridgesStephan Bergmann2-2/+2
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable loplugin:cstylecast for some more cases" plus solenv/clang-format/reformat-formatted-files Change-Id: I4d48f46fa64fe866081cd85c731a93b4bfcdf787
2017-12-21new loplugin: convertlongNoel Grandin1-1/+1
merge the droplong and convertuintptr into one new plugin. Limit the analysis to looking at var decl's, since that seems to be safest proposition, even if that too needs some careful analysis. Change-Id: Id005baaf05cfb157ce44a06a1c81f08559a07d1f Reviewed-on: https://gerrit.libreoffice.org/46851 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-11loplugin:salcall fix functionsNoel Grandin5-27/+27
since cdecl is the default calling convention on Windows for such functions, the annotation is redundant. Change-Id: I1a85fa27e5ac65ce0e04a19bde74c90800ffaa2d Reviewed-on: https://gerrit.libreoffice.org/46164 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-12-08bridges: [loplugin:includeform] gcc3_linux_intelMichael Stahl6-23/+23
Change-Id: I0a60521e893990af63d723871edcbc564b135074
2017-12-05std::unexpected_handler is gone at least from recent libc++ in C++17 modeStephan Bergmann1-1/+1
Change-Id: Ibae0499f52c1e22ec9790e62cc84053dff2c2add Reviewed-on: https://gerrit.libreoffice.org/45855 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-26fix includes in aarch64 bridgeDavid Tardon4-5/+5
Change-Id: Ia27f15483c27bc43a3cd3a74432f15fa928ad6da
2017-11-14Fix ASan "alloc-dealloc-mismatch (operator new [] vs operator delete)"Stephan Bergmann1-24/+64
...e.g. during CppunitTest_smoketest, after be2d9d3407ddae22797879e93778513be30ec5aa "Clean up m_generatedRttis at exit" Change-Id: Ife4b07927ba11cf5b99e987b3bb9af068652ba62
2017-11-13ofz: Direct-leakCaolán McNamara1-5/+11
asan reports that the strdups leak and __si_class_type_info takes a const char* arg Change-Id: Ie0ee94554689d9246981cb7d6ce0f23917c2d333 Reviewed-on: https://gerrit.libreoffice.org/44641 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-09Clean up m_generatedRttis at exitStephan Bergmann1-16/+24
...inspired by <https://gerrit.libreoffice.org/#/c/44487/> "silence RTTI::getRTTI Direct-leak". (std::type_info is guaranteed to have a virtual dtor.) Change-Id: I972bfd57a2e800ef0e9bfc978fdc6345dbff853e Reviewed-on: https://gerrit.libreoffice.org/44532 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-11-03iOS include error in bridgesjan Iversen1-1/+1
Need to use "" for call.hxx include Change-Id: I9a30f3d3cfab83076f9ad22a5b637f8f4fc7c432
2017-10-27loplugin:includeform: bridges (Windows)Stephan Bergmann4-14/+14
Change-Id: I4514d751d5449902c589c7f3577c7f3cd593d2e9
2017-10-24loplugin:includeform: bridges (macOS)Stephan Bergmann8-29/+29
Change-Id: I9df97c6684de7dfc60f79dd11abaed069e5f08b2
2017-10-23loplugin:includeform: bridgesStephan Bergmann24-127/+127
Change-Id: Icad98d3153a5b1710c8c2a2d338ba0129e9ff208
2017-10-23overload std::hash for OUString and OStringNoel Grandin25-25/+25
no need to explicitly specify it anymore Change-Id: I6ad9259cce77201fdd75152533f5151aae83e9ec Reviewed-on: https://gerrit.libreoffice.org/43567 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-10-05Fix --enable-assert-always-abort (but not --enable-debug) buildTor Lillqvist1-1/+1
Look at NDEBUG, not OSL_DEBUG_LEVEL, to see whether asserts are active or not. Change-Id: I772d27da4bcc73c8c5a50ab4b72f50caddcf7273
2017-09-22iOS, make simulator config copy of macosx.jan Iversen13-1050/+4943
When compiling for the simulator it is like compiling for macosx (64bit) but with other libraries, therefore the bridge should be like the macosx. Change-Id: I59f1442a5c77d09ad0bc4bf31c2432fc32ef725e