General reduction initializer and outconverter functions must not be internalized.
Requires corresponding frameworks/compile/slang change.
Now that the front end is no longer adding these functions to
@llvm.used, we must ensure that they do not get deleted -- they
are needed by the CPU reference driver.
Note that it is not necessary for bcc to explicitly delete:
- the UNexpanded accumulator functions
- the @.rs.reduce_fn.* dummy variables created by slang to ensure that
the general reduction constituent functions survive front-end
compilation
The existing internalization and unreferenced symbol removal logic
takes care of this.
Bug: 23535724
Change-Id: Ie8ea77c17d0a057442b30c461e2882b78de2fe0e
3 files changed