Skip to content

v1.2.29

Latest
Compare
Choose a tag to compare
@CaptnJackSparrow CaptnJackSparrow released this 18 Apr 06:08

What's Changed


  • Merged PR 3211: Upgrade hatlib dependency to 0.0.39. [Captain Jack
    Sparrow]

    Upgrade hatlib dependency to 0.0.39

  • Merged PR 3209: Support AffineParallelOp and scf::ParallelOp in
    RangeValue utils. [Mason Remy]

    Support AffineParallelOp and scf::ParallelOp in RangeValue utils

  • Merged PR 3207: Fix parallelization and enable file checker in tests.
    [Captain Jack Sparrow]

    Fix parallelization and enable file checker in tests

  • Merged PR 3195: [LLVM 15] progressive upgrade (24a37a396a9b), disable
    macos builds. [Lisa Ong]

    The first of a series of progressive upgrades from LLVM 14.0.6 to LLVM 15.0.7 (and possibly beyond).

    Current LLVM version:
    https://intelligentdevices.visualstudio.com/ELL/_git/accera.llvm?version=GBaccera/llvmorg-15-24a37a396a9b&_a=history

    This is llvmorg-15.0.0-init, fast forwarded to about 100 "relevant" MLIR commits (actual number of commits is higher).

    Performance on AVX2 is verified for Windows (no regressions).

    Breaking Change: macOS builds
    With this upgrade we are also retiring the macOS pipelines due to lack of build resources for LLVM macos/intel Conan packages. This only affects internal developer scenarios. Public developers continue to rely on vcpkg builds.

  • Merged PR 3172: Adds better support for compiling specifically for
    AVX2 targets. [Kern Handa]

    • Plumb AVX2 flags to LLVM, with a block for macOS. We plan to remove official support for macOS/Intel starting from LLVM 15 due to limited build resources.
    • Initialize Target.HOST extensions using cpu_info
    • Added more AVX2 filecheck tests to catch LLVM lowering regressions before moving to LLVM 15 [MasonR]

    Breaking Change: Target.HOST no longer unconditionally enables the AVX2 extension if the underlying CPU does not support it, otherwise codegen may result in unsupported instructions.

    To compile for AVX2 if your host doesn't support AVX2, specify Target(""). For example, plan = schedule.create_plan(Target("Intel 6700"))

  • Merged PR 3203: Plumb target device info into llvm lowering. [Denny
    Sun]

    llvm lowering now depends on some static complier macro to check target device info, which breaks cross compilation support.

    // TODO: get check `TargetDeviceInfo` for the OS instead
    #ifdef WIN32
    
    const int hostBitSize = 64; // TODO:: FIXME :: This assumes that the host is always 64bit
    // Should query the target hardware
    auto llvmIntTy = hostBitSize == 32 ? llvmI32Ty : llvmI64Ty;
    

Full Changelog: v1.2.28...v1.2.29