[PATCH] D30047: [GlobalISel] Split LowLevelType to a fundamental type in libSupport.

Daniel Sanders via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 28 07:32:05 PST 2017


dsanders added a comment.

Unfortunately, this approach introduces a circular dependency when LLVM_ENABLE_MODULES=1. The failure was in http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules-2/builds/4942 and was caused by the following dependency loop:

  LLVM_Utils -> LLVM_CodeGen_MachineValueType -> LLVM_Utils

To write it another way, we have these dependencies:

- TableGen -> Support
- CodeGen -> Support
- Support -> CodeGen

I can see two ways forward:

- We use the original version of https://reviews.llvm.org/D30046 (https://reviews.llvm.org/D30046?id=88737) so that we continue to have the following dependencies:
  - TableGen -> Support
  - TableGen -> CodeGen
  - CodeGen -> Support
- We also move the MVT type to Support so we remove the TableGen->CodeGen dependency and are left with:
  - TableGen -> Support
  - CodeGen -> Support

Which would you prefer?


https://reviews.llvm.org/D30047





More information about the llvm-commits mailing list