[all-commits] [llvm/llvm-project] 123eb7: [Flang] Do not emit numeric_storage_size into obje...

Michael Kruse via All-commits all-commits at lists.llvm.org
Fri Mar 21 04:33:15 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 123eb75cd43a5181c324efc033e978f0f1ed4598
      https://github.com/llvm/llvm-project/commit/123eb75cd43a5181c324efc033e978f0f1ed4598
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-03-21 (Fri, 21 Mar 2025)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp

  Log Message:
  -----------
  [Flang] Do not emit numeric_storage_size into object file (#131463)

The value of numeric_storage_size depends on compilation options and
therefore its value is not yet known when building the builtins runtime.
Instead, the parameter is folding a __numeric_storage_size() expression
which is loaded into the user program. For the iso_fortran_env object
file, omit the symbol as it is never used.

Similar tests that ensure that __numeric_storage_size() is not folded
until compiling the actual user program exist in FortranEvalutate:

https://github.com/llvm/llvm-project/blob/1e6ba3cd2fe96be00b6ed6ba28b3d9f9271d784d/flang/lib/Evaluate/check-expression.cpp#L487-L492

https://github.com/llvm/llvm-project/blob/1e6ba3cd2fe96be00b6ed6ba28b3d9f9271d784d/flang/lib/Evaluate/fold-integer.cpp#L1457-L1460

Required for using CMake to compile the builtin module files. See RFC at
https://discourse.llvm.org/t/rfc-building-flangs-builtin-mod-files/84626



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list