Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Resolved cast-qual and other warnings #837

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Resolved cast-qual and other warnings #837

wants to merge 1 commit into from

Conversation

hfp
Copy link
Collaborator

@hfp hfp commented Dec 5, 2023

  • Makefile/inc

    • Only apply certain compiler flags if available with compiler in question.
    • Avoid duplicated warnings flags.
    • Fallback for LIBM and LIBC.
  • Warnings

    • Introduced LIBXSMM_ASSIGN_VALUE, and resolved cast-qual warnings.
    • Avoid GCC-specific directive and rely on family of LIBXSMM_PRAGMA_DIAG_* macros.
    • Utilize LIBXSMM_PRAGMA_DIAG family of directives.
    • Avoid warnings about unused function.
    • Fixed numerous compilation warnings.
    • Fixed dropping const-qualifier.
  • Macros/infra

    • Improved LIBXSMM_TYPEINFO to support FP-, and UI-info. Made LIBXSMM_TYPEINFO_FP, and LIBXSMM_TYPEINFO_UI separately available.
    • Make diagnostic-control available early, i.e., include headers with warnings suppressed.
    • Adjusted condition for older Clang (LIBXSMM_PRAGMA_DIAG_OFF_FADDRESS).
    • Made LIBXSMM_PRAGMA available more broadly.
    • Enable LIBXSMM_PRAGMA if GNU is pre-C99.
    • Fixed issues applying attribute (weak).
  • Other

    • MHD: Introduced element-handler info-struct to replace destination-type; allows for conversion hints, etc.
    • MHD: Updated mapping general LIBXSMM data-types to MHD. Support data-comversion handler during MHD-write.
    • Revised implementation of libxsmm_coprime mainly to have more sensible result in case of minco=0.
    • Improved libxsmm_print_cmdline and made prefix/postfix optional arguments.
    • Print PID as part of "Command" info (verbose termination message).
    • Fixed libxsmm_offset and implemented test.
    • Adjusted definition of libxsmm_coprime2.
  • Cleanup

    • Deleted libxsmm_ext.h header-file. Removed LIBXSMM_CONST_VOID_PTR.
    • Documentation: updated settings according to documentation (RTD).
    • Documentation: fixed incorrect include-path.
    • Corrected location of header files (VS project).
    • Updated MkDocs.

@hfp
Copy link
Collaborator Author

hfp commented Dec 15, 2023

Rebased on top of #838

@alheinecke
Copy link
Collaborator

Can you please break this PR into multiple smaller one.

I have seen some transient CI issues which we didn't have on main. I would like to understand if they are related to changes. so breaking into smaller, non-overlapping pieces.

* Makefile/inc
  - Only apply certain compiler flags if available with compiler in question.
  - Fixed incorrect warning when using custom compiler defined by CC/CXX.
  - Avoid duplicated warnings flags.
  - Fallback for LIBM and LIBC.

* Warnings
  - Introduced LIBXSMM_VALUE_ASSIGN, and resolved cast-qual warnings.
  - Avoid GCC-specific directive and rely on family of LIBXSMM_PRAGMA_DIAG_* macros.
  - Fixed warnings about deprecated/unsafe function (sprintf).
  - Utilize LIBXSMM_PRAGMA_DIAG family of directives.
  - Avoid warnings about unused function.
  - Fixed warnings about type-truncation.
  - Fixed numerous compilation warnings.
  - Fixed dropping const-qualifier.

* Macros/infra
  - Improved LIBXSMM_TYPEINFO to support FP-, and UI-info. Made LIBXSMM_TYPEINFO_FP, and LIBXSMM_TYPEINFO_UI separately available.
  - Make diagnostic-control available early, i.e., include headers with warnings suppressed.
  - Adjusted condition for older Clang (LIBXSMM_PRAGMA_DIAG_OFF_FADDRESS).
  - Made LIBXSMM_PRAGMA available more broadly.
  - Enable LIBXSMM_PRAGMA if GNU is pre-C99.
  - Fixed issues applying attribute (weak).

* Other
  - MHD: Introduced element-handler info-struct to replace destination-type; allows for conversion hints, etc.
  - MHD: Updated mapping general LIBXSMM data-types to MHD. Support data-comversion handler during MHD-write.
  - Improved pooled allocation (hash calculation outside of macro/side-effect, streamlined variable names).
  - Revised implementation of libxsmm_coprime mainly to have more sensible result in case of minco=0.
  - Improved libxsmm_print_cmdline and made prefix/postfix optional arguments.
  - Print PID as part of "Command" info (verbose termination message).
  - Made LIBXSMM_ATOMIC_ACQUIRE macro an own block (do/while pattern).
  - Fixed libxsmm_offset and implemented test.
  - Adjusted definition of libxsmm_coprime2.

* Cleanup
  - Deleted libxsmm_ext.h header-file. Removed LIBXSMM_CONST_VOID_PTR.
  - Revised interface of libxsmm_pfree and improved malloc-test (const).
  - Documentation: updated settings according to documentation (RTD).
  - Cleanup embedded build options (LIBXSMM_DUMP_BUILD).
  - Corrected location of header files (VS project).
  - Updated VS project (new translation units).
  - Updated MkDocs.
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.

None yet

2 participants