Skip to content

Releases: sx-aurora-dev/llvm-project

llvm-ve-rv-2.2.0

22 Mar 19:25
Compare
Choose a tag to compare
  • Fix VSC codegen.
  • RV+isel support for strided VLD/VST (requires a constant stride).

llvm-ve-rv-2.1.0

25 Nov 13:58
Compare
Choose a tag to compare

Bug fix release

  • Fixed sotoc clang tool (incorrect dylib linkage).

Otherwise identical to https://github.com/sx-aurora-dev/llvm-project/releases/llvm-ve-rv-v2.0.0

llvm-ve-rv-1.9.0

12 Sep 22:06
a877737
Compare
Choose a tag to compare

Tag of hpce/stable branch with important fixes for omp target (both, native and sotoc).

Offloading options with omp target:

VH -> VE (llvm-ve compiled device code)
clang -march=native -fopenmp -fopenmp-targets=ve-linux ...

VH -> VE (ncc compiled device code)
clang -march=native -fopenmp -fopenmp-targets=aurora-nec-veort ...

VE -> VH
clang -target=ve-linux -fopenmp -fopenmp-targets=x86_64-pc-linux-gnu ...

Other news:

RegionVectorizer diagnostics: enable with -Rpass=rv. This only applies to -target ve-linux compilations.

The limitations from release 1.8.0 are gone, no need to use -mvepacked for instrinsics any more, also no need for -fplugin=libRV.so.

llvm-ve-1.20.0

08 Jun 01:03
cf8c8a0
Compare
Choose a tag to compare

llvm version is 12.

Change:

  • Fix cost of vector store. This may fix the issue that loop unrolling is not worked as expected.

llvm-ve-1.19.0

06 May 12:38
0f83711
Compare
Choose a tag to compare

llvm version is 12.

Changes:

  • Add intrinsics for lcr,scr,tscr,fidcr,fence instructions.

llvm-ve-1.18.0

20 Apr 02:05
Compare
Choose a tag to compare

llvm version is 12.0.0.

Change:

  • Improve the stability of generated program by -O3.

llvm-ve-1.17.0

22 Mar 00:56
Compare
Choose a tag to compare

llvm version is 12.0.0

Changes

  • Change to use internal assembler by default
  • Change to compile profiler library
  • Support stores of the address of a label
  • Update intrinsics
  • Fix initializer visibility
  • Support bcr %sy, 0, dist format in assembly
  • Change to rematerialize instructions retrieve consant immediate values.
    This allows users to use more vector registeres without spilling.
  • Optimize generated code using a fold immediate in a peephole optimization
    pass.
  • Support a vector register constraint in inline assembler.
  • Support jump tables.
  • Optimize prologue/epilogue coeds.
  • Fix a problem that vgt intrinsic ignores the value of 3rd immediate value
    operand and vsc intrinsic instruction ignores the value of 4th immediate
    value operand.
  • Correct a problem that LVL instruction is not generated correctly after
    function calls.
  • Change the default CPU name to "generic".
  • Remove musl support.
  • Merge hpce/develop branch.
  • Add new vbrv/vldz/vpcnt intrinsics.

llvm-ve-rv-2.0.0

22 Nov 14:52
Compare
Choose a tag to compare

Changes

  • Compiler resource paths brought in line with develop branch.
  • [rv] Fixed vectorization of certain loops with irregular loop structure in IR ("long" iteration variable bug).
  • [rv] RV integrated as an LLVM component.
  • Added script for setting environment variables. (llvmvevars.sh)
  • LLVM build as a monolithing shared library (DYLIB build).

Offloading options with omp target:

VH -> VE (llvm-ve compiled device code)
clang -march=native -fopenmp -fopenmp-targets=ve-linux ...

VH -> VE (ncc compiled device code)
clang -march=native -fopenmp -fopenmp-targets=aurora-nec-veort ...

VE -> VH
clang -target=ve-linux -fopenmp -fopenmp-targets=x86_64-pc-linux-gnu ...

Getting llvm-ve-rv on the command line

To add the binaries of this release to your $PATH, run:
. /usr/local/ve/llvm-ve-rv-2/bin/llvmvevars.sh

llvm-ve-rv-1.8.0

16 Dec 15:12
Compare
Choose a tag to compare
llvm-ve-rv-1.8.0 Pre-release
Pre-release

Merges develop at 'feature/merge-upstream-20201124-3'.

  • To use VL intrinsics, run clang/clang++ with the flag -mvepacked.
  • To compile c++ executables, run clang++ -static - there are known issues with the shared libc++ on VE.
  • To run clang/clang++ with the Region Vectorizer pass the option -fplugin=libRV.so and make sure that libRV.so is in your LD_LIBRARY_PATH.

llvm-ve-1.16.0

21 Aug 11:11
Compare
Choose a tag to compare
  • Optimize leaf functions
  • Change calling convention to expand all values to 64 bits width in order to follow ABI
  • Optimize 1 byte atomic swap instructionsve_vl_pvandlo
  • Remove some intrinsics

vel_pvandup
vel_pveqvlo
vel_pveqvup
vel_pvorlo
vel_pvorup
vel_pvslalo
vel_pvslaup
vel_pvslllo
vel_pvsllup
vel_pvsralo
vel_pvsraup
vel_pvsrllo
vel_pvsrlup
vel_pvxorlo
vel_pvxorup