Skip to content

Cleanup symbol exports on darwin and add architecture preprocessor checks to assist in building fat binaries (eg: i386+x86_64 on macOS or arm+aarch64 on iOS)#450

Merged
atgreen merged 10 commits intolibffi:masterfrom
jeremyhu:master
Feb 19, 2019

Conversation

@jeremyhu
Copy link
Contributor

These changes address some symbol visibility issues that I uncovered while comparing symbols exported from current libffi master to previous versions on macOS (i386 + x86_64) and iOS (arm + aarch64) as well as a couple other minor trivia fixes for warnings.

libffi/src/closures.c:175:23: This function declaration is not a prototype

Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
…_go_closure_win64

Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
…ure, and ffi_prep_java_raw_closure_loc when FFI_NATIVE_RAW_API is 0

Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
libffi/src/x86/ffi64.c:286:21: The left operand of '!=' is a garbage value due to array index out of bounds
libffi/src/x86/ffi64.c:297:22: The left operand of '!=' is a garbage value due to array index out of bounds

Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
…sier fat builds (eg: iOS)

Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
Signed-off-by: Jeremy Huddleston Sequoia <[email protected]>
@jeremyhu
Copy link
Contributor Author

Any thoughts on this? I'd like to get these merged as I have a series that builds on this, which II'm close to submitting. Thanks.

@atgreen atgreen merged commit 05a1796 into libffi:master Feb 19, 2019
@atgreen
Copy link
Member

atgreen commented Feb 19, 2019

Thanks

@atgreen
Copy link
Member

atgreen commented Apr 22, 2019

It turns out that this broken Windows builds: https://ci.appveyor.com/project/atgreen/libffi/builds/22482161

We need to fix the appveyor machinery to report these as failures.

@jeremyhu
Copy link
Contributor Author

Is there a ticket for the regression that you can point me to? I'm not at all familiar with Window development but can give it a go if there's a way to ask that CI system to just try building a branch.

jeremyhu added a commit to jeremyhu/libffi that referenced this pull request Apr 11, 2020
…o master

Reviewed-by: Mike Ash <[email protected]>
Reviewed-by: Matt Reda <[email protected]>

* commit '2284bfc111229c3af01722d9aab23056025a8e01': (22 commits)
  darwin arm64e: libunwind requires that the CFA match the value used to sign LR
  arm64e: Fix frame size to 40b to match earlier change in aarch64/ffi.c
  Add missing arch guards around ffi_find_closure_for_code_np
  fix mingw build and crashing bugs for Python Windows ARM64 (libffi#496)
  Clear the apt cache
  More debugging output
  Debug moxie builds in travis
  libffi: added ARM64 support for Windows (libffi#486)
  uuencode compressed log files for travis
  hppa: avoid TEXTREL in .eh_frame section (libffi#447)
  fix x86/x64 MSVC build (libffi#487)
  add support for 32-bit ARM on Windows (libffi#477)
  fix check for Linux/aarch64
  Cleanup symbol exports on darwin and add architecture preprocessor checks to assist in building fat binaries (eg: i386+x86_64 on macOS or arm+aarch64 on iOS) (libffi#450)
  Fix cfi checks for old compiler (libffi#453)
  changes for win32 on windows (libffi#468)
  aarch64: Flush code mapping in addition to data mapping (libffi#471)
  Remove -Os testing. No ABI impact, and helps trim log lengths.
  fix(configure): Correctly detect visibility("hidden") support on Darwin
  Fix Q registers parameter passing on ARM64
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants