On Mon, Aug 10, 2020 at 12:20 AM Per Nordlöw via Digitalmars-d-learn <digitalmars-d-learn@puremagic.com> wrote:
>
> Is cross-module-inlining enabled by default in LDC when compiling
> in release mode or do I have to use explicitly flag for it? I
> can't find any such flag from the output of neither
>
>      ldc2 -h
>
> nor
>
>      ldmd2 -h
>
> Johan Engelen mentioned this, then experimental, flag in his
> DConf talk from 2017 [1]
>
> [1] https://www.youtube.com/watch?v=IZY67TBZ0V4

ldc2 --help-hidden | grep cross
  --disable-demotion                                              - Clone multicolor basic blocks but do not demote cross scopes
  --enable-cross-module-inlining=<value>                          - (*) Enable cross-module function inlining (default disabled)
  --iterative-counter-promotion                                   - Allow counter promotion across the whole loop nest.
  --jump-threading-across-loop-headers                            - Allow JumpThreading to thread across loop headers, for testing
  --licm-n2-threshold=<int>                                       - How many instruction to cross product using AA
  --lsr-backedge-indexing                                         - Enable the generation of cross iteration indexed memops
    =cross-dso-cfi                                                -   Cross-DSO CFI
    =cross-dso-cfi                                                -   Cross-DSO CFI
  --split-dwarf-cross-cu-references                               - Enable cross-cu references in DWO files
  --x86-align-branch-boundary=<uint