Skip to content

Add aarch64 (Arm 64-bit) CI job #8572

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Draft
wants to merge 8 commits into
base: develop
Choose a base branch
from

Conversation

tautschnig
Copy link
Collaborator

@tautschnig tautschnig commented Jan 20, 2025

Run regression tests and build release package using GitHub's newly (publicly) available aarch64 runner.

  • Each commit message has a non-empty body, explaining why the change was made.
  • n/a Methods or procedures I have added are documented, following the guidelines provided in CODING_STANDARD.md.
  • The feature or user visible behaviour I have added or modified has been documented in the User Guide in doc/cprover-manual/
  • Regression or unit tests are included, or existing tests cover the modified code (in this case I have detailed which ones those are in the commit message).
  • n/a My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • n/a White-space or formatting changes outside the feature-related changed lines are in commits of their own.

Copy link

codecov bot commented Jan 20, 2025

Codecov Report

Attention: Patch coverage is 57.31707% with 35 lines in your changes missing coverage. Please review.

Project coverage is 80.36%. Comparing base (3c915eb) to head (4328cb0).

Files with missing lines Patch % Lines
src/util/simplify_expr.cpp 39.39% 20 Missing ⚠️
src/cpp/cpp_internal_additions.cpp 27.27% 8 Missing ⚠️
src/ansi-c/goto-conversion/builtin_functions.cpp 80.00% 4 Missing ⚠️
src/ansi-c/c_typecheck_expr.cpp 57.14% 3 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #8572      +/-   ##
===========================================
- Coverage    80.37%   80.36%   -0.01%     
===========================================
  Files         1686     1686              
  Lines       206885   206956      +71     
  Branches        73       73              
===========================================
+ Hits        166276   166317      +41     
- Misses       40609    40639      +30     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tautschnig tautschnig force-pushed the arm-ci branch 3 times, most recently from 97ea138 to 04bf0cd Compare January 20, 2025 15:30
@tautschnig tautschnig marked this pull request as draft January 20, 2025 15:37
@tautschnig tautschnig assigned tautschnig and unassigned peterschrammel and TGWDB Feb 7, 2025
@tautschnig tautschnig force-pushed the arm-ci branch 3 times, most recently from 1bf6226 to 9ef53de Compare February 10, 2025 06:41
This arises with aarch64 va_list structs (but possibly also in other
cases).
GCC on Arm-only supports additional vector types that compile to
hardware-supported types.
This isn't portable to non-x86 architectures.
The intervening zero-extension does not alter the semantics and hinders
the application of `skip_typecast`.
aarch64 ABI (section 7.1.4) mandates that va_list is a struct with
particular members. The C library model was fixed in diffblue#8366, but we
didn't yet implement the struct type support in goto conversion.
Run regression tests and build release package using GitHub's newly
(publicly) available aarch64 runner.
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants