Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

ICC missing bmi2 target

nemequ
New Contributor I
467 Views

GCC (and clang) support __attribute__((__target__("bmi2"))), ICC doesn't, which can cause compile failures due to ICC masquerading as GCC (defining __GNUC__ and friends).

Reproducible by simply adding the attribute to a function, for example:

_attribute__((__target__("bmi2")))
int main (void) {
  return 0;
}

Will trigger something like

icc (ICC) 17.0.1 20161005
Copyright (C) 1985-2016 Intel Corporation.  All rights reserved.

bmi2.c(1): warning #3550: target attribute not recognized
  __attribute__((__target__("bmi2")))
                            ^
0 Kudos
1 Reply
Melanie_B_Intel
Employee
467 Views

Thanks for reporting this, I've opened DPD200415859 in our internal bug tracking database.  --Melanie

0 Kudos
Reply