facebook / zstd

Zstandard - Fast real-time compression algorithm
http://www.zstd.net
Other
23.42k stars 2.08k forks source link

Improve support for IAR compiler with attributes and intrinsics #4046

Closed josepho0918 closed 4 months ago

josepho0918 commented 4 months ago

This patch improves development experience and performance for projects using the IAR toolchain.

Cyan4973 commented 4 months ago

Sometimes I see __ICCARM__ being tested, and sometimes __IAR_SYSTEMS_ICC__. Would you mind explaining the difference, and why sometimes one is better than the other ?

josepho0918 commented 4 months ago

Sometimes I see __ICCARM__ being tested, and sometimes __IAR_SYSTEMS_ICC__. Would you mind explaining the difference, and why sometimes one is better than the other ?

__IAR_SYSTEMS_ICC__ identifies the IAR compiler platform, while __ICCARM__ specifically designates the IAR compiler for Arm architecture. Since there're IAR versions for various architectures, such as RISC-V, __ICCARM__ is utilized for IAR intrinsics.

Cyan4973 commented 4 months ago

Quick question : does it sound plausible to feature an __IAR_SYSTEMS_ICC__ compiler test during CI tests on Github Actions ?

If not, this is a "blind fix", and any future update could break compatibility is subtle ways, which would remain invisible.

josepho0918 commented 4 months ago

Quick question : does it sound plausible to feature an __IAR_SYSTEMS_ICC__ compiler test during CI tests on Github Actions ?

If not, this is a "blind fix", and any future update could break compatibility is subtle ways, which would remain invisible.

It will be fantastic to have CI tests for IAR. However, it's a paid tool.