[libcxx-commits] [PATCH] D78381: [libc++] Create a small DSL for defining Lit features and parameters

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Apr 17 10:14:47 PDT 2020


ldionne created this revision.
Herald added subscribers: libcxx-commits, broadwaylamb, dexonsmith, jkorous.
Herald added a project: libc++.
Herald added a reviewer: libc++.
ldionne added a parent revision: D78370: [libc++/abi/unwind] Rename Lit features for no exceptions to -fno-exceptions.
ldionne added a child revision: D78382: [libc++] Define a few Lit features and Parameters with the new DSL.

This allows defining Lit features that can be enabled or disabled based
on compiler support, and parameters that are passed on the command line.

The main benefits are:

- Feature detection is entirely based on the substitutions provided in the TestingConfig object, which is simpler and decouples it from the complicated compiler emulation infrastructure.
- The syntax is declarative, which makes it easy to see what features and parameters are accepted by the test suite. This is significantly less entangled than the current config.py logic.
- Since feature detection is based on substitutions, it works really well on top of the new format, and custom Lit configurations can be created easily without being based on `config.py`.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D78381

Files:
  libcxx/test/libcxx/selftest/dsl/dsl.sh.py
  libcxx/test/libcxx/selftest/dsl/lit.local.cfg
  libcxx/utils/libcxx/test/dsl.py

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78381.258353.patch
Type: text/x-patch
Size: 24487 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20200417/48fa4e4f/attachment-0001.bin>


More information about the libcxx-commits mailing list