zstd icon indicating copy to clipboard operation
zstd copied to clipboard

Improve support for IAR compiler with attributes and intrinsics

Open josepho0918 opened this issue 1 year ago • 4 comments

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

  • Utilize IAR compiler attributes
  • Optimized with IAR intrinsics

josepho0918 avatar May 14 '24 09:05 josepho0918

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 ?

Cyan4973 avatar May 14 '24 18:05 Cyan4973

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.

josepho0918 avatar May 15 '24 00:05 josepho0918

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.

Cyan4973 avatar May 15 '24 02:05 Cyan4973

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.

josepho0918 avatar May 15 '24 02:05 josepho0918