Commit Graph

6 Commits

Author SHA1 Message Date
Robert Widmann
28b66f6225 Switch DeclValidation Counter to Request Counter
Now that validateDecl is gone, stop duplicating work here and use the
request counter instead.
2019-10-28 15:36:50 -07:00
Jordan Rose
1eaa767407 [test] Run scale-tests on Linux too (#27223)
It's likely that these were listed as "REQUIRES: OS=macosx" to not
redundantly run them for iOS et al, but they don't take that long and
so it's more useful for Linux devs to be able to run them locally if
need be. Or to catch something that really is different on non-macOS.
2019-09-18 08:27:37 -07:00
Slava Pestov
5370ac0f03 compiler_scale tests should run full pipeline instead of just -typecheck
Now that SILGen and IRGen can trigger type checking work, we have to run the
full pipeline to get a complete picture.

Thankfully everything still passes!
2019-07-17 18:07:03 -04:00
Slava Pestov
47c6117a9b Sema: Remove deprecated SWIFT_FUNC_STAT counters 2018-03-06 19:42:52 -08:00
Slava Pestov
20b13bde5f scale_tests require an asserts build 2017-01-08 23:54:01 -08:00
Slava Pestov
02185c30ee Sema: When validating members for layout, skip certain members
For all types, we can safely skip nested nominal types and
typealiases.

For a struct, we only have to look at VarDecls; methods never
affect layout.

Similarly for an enum, only EnumElementDecls matter.

For a class, we still have to look at all methods and properties.
Ideally, in non-optimized builds we would invoke virtual methods
by calling thunks, and only emit the thunks from the translation
unit containing the class. Then the layout of a class will
only be necessary if you subclass the class.

This should improve compiler scalability in multiple-frontend
mode.
2017-01-08 21:01:14 -08:00