[all-commits] [llvm/llvm-project] a54704: [WebAssembly] Split and tidy up target features te...

Heejin Ahn via All-commits all-commits at lists.llvm.org
Wed Jun 26 13:29:17 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a54704de0d019760c80517b97bd1df636076a059
      https://github.com/llvm/llvm-project/commit/a54704de0d019760c80517b97bd1df636076a059
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-06-26 (Wed, 26 Jun 2024)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/target-features-attrs.ll
    A llvm/test/CodeGen/WebAssembly/target-features-cpus.ll

  Log Message:
  -----------
  [WebAssembly] Split and tidy up target features test (#96735)

This splits `target-features.ll` into two tests:
`target-features-attrs.ll` and `target-features-cpus.ll`.

Now `target-features-attrs.ll` contains tests with bitcode function
attributes and `-mattr=` options. The current `target-features.ll`
file's FileCheck lines are confusing, mainly because it is unclear how
`CHECK` and `ATTRS` lines are meant to be different. Turns out, before
https://github.com/llvm/llvm-project/commit/67ec8744d7e72b50a5db5038c9643584ce57cb0c,
`-mattr=` options used to override any existing bitcode function
attributes, but after the commit that's not the case anymore. So the
original test had a line that tested `i32.atomic.rmw.cmpxchg` was not
generated when `-mattr=+simd128` was given (because the existing
`+atomics` in the function attributes is overriden). That commit deleted
that line and changed some `ATTRS` lines into `CHECK`, which was
confusing. This PR simplifies that part and does not test the absence of
any instructions, and the effect of `-mattr=` option is only tested with
the target features section.

And `target-features-cpus.ll` only tests the sets of features enabled by
`-mcpu=` lines. It is better to have this as a separate file because
once you have bitcode function attributes they end up in the target
features section too, making the testing of only the `-mcpu=` options
difficult.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list