2014-11-18 08:33, Neil Horman: > On Tue, Nov 18, 2014 at 10:56:24AM +0600, Yerden Zhumabekov wrote: > > Sorry, maybe I made a mistake here. > > > > Accoring to lib/librte_eal/common/eal_common_cpuflags.c code, it seemed > > to me that constructor attribute is not supported by intel compiler. So > > in that case here I decided to leave the code for autodetection. Am I > > correct? > > I don't think thats correct. The Intel Compiler claims support for most GCC > features, except where explicitly stated in the release notes, and I don't > find > any documentation clearly excepting the constructor attribute from that list. > That said, since the intel compiler isn't open, I don't have access to it and > cannot confirm either way, though if its the case, the DPDK has a major issue, > as __attribute__((constructor)) is used extensively throughout the code
The comment of rte_cpu_check_supported() is: "with ICC, the check is generated by the compiler" So in my understanding, the constructor attribute is not set because this function isn't needed for ICC. I'd like to see an explanation of how CPU flags are set by ICC. -- Thomas