Page MenuHomePhabricator

[Clang][NewPM] Don't bail out if the target machine is empty
ClosedPublic

Authored by phosek on Feb 18 2019, 11:10 PM.

Details

Summary

This matches the behavior of the old pass manager. There are some
targets that don't have target machine at all (e.g. le32, spir) which
whose tests would never run with new pass manager. Similarly, we would
need to disable tests for targets that are disabled.

Diff Detail

Repository
rC Clang

Event Timeline

phosek created this revision.Feb 18 2019, 11:10 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 18 2019, 11:10 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
chandlerc requested changes to this revision.Feb 26 2019, 2:42 PM

Maybe update at least some of the tests using these targets to additionally run with the new pass manager explicitly enabled via flag?

clang/lib/CodeGen/BackendUtil.cpp
950 ↗(On Diff #187312)

I would say RequiresCodeGen instead of UsesCodeGen as we will still *use* the target manager even if it isn't required when emitting a .ll file.

This revision now requires changes to proceed.Feb 26 2019, 2:42 PM
phosek updated this revision to Diff 188999.Mar 1 2019, 4:15 PM
phosek marked an inline comment as done.
phosek added a comment.Mar 1 2019, 4:15 PM

Maybe update at least some of the tests using these targets to additionally run with the new pass manager explicitly enabled via flag?

Done

chandlerc accepted this revision.May 6 2019, 3:47 PM

LGTM!

This revision is now accepted and ready to land.May 6 2019, 3:47 PM
This revision was automatically updated to reflect the committed changes.