Skip to content

clang >= 7 seems to support both the target attribute and multiversioning dispatch

This is something that definitely @ssnyder should approve or not.

Short story

  • clang >=7 seems to support both the target attribute and the ifunc mechanism for dispatching.
  • cling is not clang and this is not supported by it as far I can tell.
  • In the other hand target_clones is only supported by gcc as far as I can tell. So there are cases that multiversioning of functions compiles only with gcc i.e target vs target_clones.

So tried to allow for certain code to have the same kind of behaviour for gcc and clang while leaving other untouched.

Edited by Christos Anastopoulos

Merge request reports