[all-commits] [llvm/llvm-project] 7b6616: Fix Target Multiversioning renaming.

Erich Keane via All-commits all-commits at lists.llvm.org
Mon Mar 9 08:29:32 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 7b661608287e84d6bec24262a0a42c1d8b65fcc6
      https://github.com/llvm/llvm-project/commit/7b661608287e84d6bec24262a0a42c1d8b65fcc6
  Author: Erich Keane <erich.keane at intel.com>
  Date:   2020-03-09 (Mon, 09 Mar 2020)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/attr-target-mv.c

  Log Message:
  -----------
  Fix Target Multiversioning renaming.

The initial implementation only did 'first declaration renaming' when
a default version came after. This is insufficient in cases where a
default does not exist, so this patch makes sure that we do the renaming
in all cases.

This renaming is necessary because we emit the first declaration before
knowing that it IS a target multiversion function, which would change
its name. The second declaration (the one that caused the
multiversioning) then needs to make sure that the first one has its name
changed to be consistent with the resolver usage.




More information about the All-commits mailing list