[all-commits] [llvm/llvm-project] 0ed613: Ensure target-multiversioning emits deferred decla...
Erich Keane via All-commits
all-commits at lists.llvm.org
Tue Apr 20 08:10:50 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0ed613612c5daa047e639877b1c24b36f6069384
https://github.com/llvm/llvm-project/commit/0ed613612c5daa047e639877b1c24b36f6069384
Author: Erich Keane <erich.keane at intel.com>
Date: 2021-04-20 (Tue, 20 Apr 2021)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/attr-target-mv.c
Log Message:
-----------
Ensure target-multiversioning emits deferred declarations
As reported in PR50025, sometimes we would end up not emitting functions
needed by inline multiversioned variants. This is because we typically
use the 'deferred decl' mechanism to emit these. However, the variants
are emitted after that typically happens. This fixes that by ensuring
we re-run deferred decls after this happens. Also, the multiversion
emission is done recursively to ensure that MV functions that require
other MV functions to be emitted get emitted.
More information about the All-commits
mailing list