Implemented arm canonicalization#1
Implemented arm canonicalization#1hpux735 wants to merge 2218 commits intotienex:masterfrom hpux735:master
Conversation
|
I don't mean to step on your toes, but if you want to use this canonicalization code, feel free. |
|
No worries, thanks :-) I'll merge yours with mine, yours has all the arm processors mine just armv7. |
|
I'll work on this tonight (I'm in Europe), this weekend I'm not at home. |
|
Sounds good! :) I just went through the list of SubTypes listed in llvm/include/AST/triple.h (I think) and put ‘em in there.
|
|
Support for ARMv6 done. Needs testing. |
|
What do you think about submitting this to Apple to hopefully get it into 2.2 (they're not accepting new features on the 15th), then we can move forward on your fixes to have them in swift 3.0? |
…ift-typechecker-typecheckfunctionbodyuntil [swiftc] Add test case for crash triggered in swift::TypeChecker::typeCheckFunctionBodyUntil(…)
…0124 [gardening] Fix recently introduced typo + one remaining PEP8 violation
…berSubstitutions(swift::DeclContext*) Stack trace: ``` 4 swift 0x0000000001015b37 swift::TypeBase::getMemberSubstitutions(swift::DeclContext*) + 23 5 swift 0x0000000001015fea swift::TypeBase::getTypeOfMember(swift::ModuleDecl*, swift::Type, swift::DeclContext*) + 58 6 swift 0x0000000000e4e7a7 swift::TypeChecker::resolveTypeInContext(swift::TypeDecl*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 1591 10 swift 0x0000000000e4f1be swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158 12 swift 0x0000000000e50124 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164 13 swift 0x0000000000e4f0ca swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42 14 swift 0x0000000000eddff2 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) + 146 15 swift 0x0000000000edd27d swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) + 493 16 swift 0x0000000000dfb7b9 swift::TypeChecker::resolveInheritanceClause(llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>) + 137 17 swift 0x0000000000dfed61 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1041 18 swift 0x0000000000fbeeda swift::ProtocolDecl::existentialTypeSupportedSlow(swift::LazyResolver*) + 186 23 swift 0x0000000000f6549e swift::Stmt::walk(swift::ASTWalker&) + 78 24 swift 0x0000000000e54f6a swift::TypeChecker::checkUnsupportedProtocolType(swift::Stmt*) + 138 25 swift 0x0000000000ee0e2c swift::performStmtDiagnostics(swift::TypeChecker&, swift::Stmt const*) + 28 26 swift 0x0000000000e4aa23 swift::TypeChecker::typeCheckTopLevelCodeDecl(swift::TopLevelCodeDecl*) + 163 27 swift 0x0000000000dd05ad swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1597 28 swift 0x0000000000c7bb2f swift::CompilerInstance::performSema() + 2975 30 swift 0x00000000007753d7 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2487 31 swift 0x000000000076ffb5 main + 2773 Stack dump: 0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28233-swift-typebase-getmembersubstitutions.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28233-swift-typebase-getmembersubstitutions-f57c4c.o 1. While resolving type A at [validation-test/compiler_crashers/28233-swift-typebase-getmembersubstitutions.swift:7:56 - line:7:56] RangeText="A" <unknown>:0: error: unable to execute command: Segmentation fault <unknown>:0: error: compile command failed due to signal (use -v to see invocation) ```
…as next logical line" (E125)
…ift-typebase-getmembersubstitutions [swiftc] Add test case for crash triggered in swift::TypeBase::getMemberSubstitutions(…)
…nging indent" (E121)
…::getGenericSignature(llvm::ArrayRef<swift::GenericTypeParamType*>) Stack trace: ``` swift: /path/to/swift/lib/AST/ArchetypeBuilder.cpp:1942: void collectRequirements(swift::ArchetypeBuilder &, ArrayRef<swift::GenericTypeParamType *>, SmallVectorImpl<swift::Requirement> &): Assertion `pa && "Missing potential archetype for generic parameter"' failed. 8 swift 0x0000000000effbe4 swift::ArchetypeBuilder::getGenericSignature(llvm::ArrayRef<swift::GenericTypeParamType*>) + 1620 9 swift 0x0000000000e2346c swift::TypeChecker::validateGenericSignature(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, std::function<bool (swift::ArchetypeBuilder&)>, bool&) + 332 10 swift 0x0000000000e23764 swift::TypeChecker::validateGenericTypeSignature(swift::NominalTypeDecl*) + 116 11 swift 0x0000000000dfeab2 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 354 12 swift 0x0000000000ffa25d swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2237 13 swift 0x0000000000e258bb swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187 16 swift 0x0000000000e4f1be swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158 18 swift 0x0000000000e50124 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164 19 swift 0x0000000000e4f0ca swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42 20 swift 0x0000000000eddff2 swift::IterativeTypeChecker::processResolveInheritedClauseEntry(std::pair<llvm::PointerUnion<swift::TypeDecl*, swift::ExtensionDecl*>, unsigned int>, llvm::function_ref<bool (swift::TypeCheckRequest)>) + 146 21 swift 0x0000000000edd27d swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) + 493 22 swift 0x0000000000edd409 swift::IterativeTypeChecker::satisfy(swift::TypeCheckRequest) + 889 23 swift 0x0000000000dfb710 swift::TypeChecker::resolveInheritedProtocols(swift::ProtocolDecl*) + 64 24 swift 0x0000000000efb811 swift::ArchetypeBuilder::addConformanceRequirement(swift::ArchetypeBuilder::PotentialArchetype*, swift::ProtocolDecl*, swift::RequirementSource, llvm::SmallPtrSetImpl<swift::ProtocolDecl*>&) + 225 27 swift 0x0000000000efd3af swift::ArchetypeBuilder::visitInherited(llvm::ArrayRef<swift::TypeLoc>, llvm::function_ref<bool (swift::Type, swift::SourceLoc)>) + 175 28 swift 0x0000000000efb57b swift::ArchetypeBuilder::addAbstractTypeParamRequirements(swift::AbstractTypeParamDecl*, swift::ArchetypeBuilder::PotentialArchetype*, swift::RequirementSource::Kind, llvm::SmallPtrSetImpl<swift::ProtocolDecl*>&) + 603 29 swift 0x0000000000efb2fc swift::ArchetypeBuilder::addGenericParameterRequirements(swift::GenericTypeParamDecl*) + 172 30 swift 0x0000000000e21b77 swift::TypeChecker::checkGenericParamList(swift::ArchetypeBuilder*, swift::GenericParamList*, swift::DeclContext*, bool, swift::GenericTypeResolver*) + 391 31 swift 0x0000000000e233af swift::TypeChecker::validateGenericSignature(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, std::function<bool (swift::ArchetypeBuilder&)>, bool&) + 143 32 swift 0x0000000000e23764 swift::TypeChecker::validateGenericTypeSignature(swift::NominalTypeDecl*) + 116 33 swift 0x0000000000dfee30 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1248 34 swift 0x0000000000dfea10 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 192 37 swift 0x0000000000ff3262 swift::namelookup::lookupInModule(swift::ModuleDecl*, llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::DeclName, llvm::SmallVectorImpl<swift::ValueDecl*>&, swift::NLKind, swift::namelookup::ResolutionKind, swift::LazyResolver*, swift::DeclContext const*, llvm::ArrayRef<std::pair<llvm::ArrayRef<std::pair<swift::Identifier, swift::SourceLoc> >, swift::ModuleDecl*> >) + 1122 38 swift 0x0000000000ffa917 swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 3959 39 swift 0x0000000000e258bb swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187 40 swift 0x0000000000de17e4 swift::TypeChecker::resolveDeclRefExpr(swift::UnresolvedDeclRefExpr*, swift::DeclContext*) + 100 44 swift 0x0000000000f6542e swift::Expr::walk(swift::ASTWalker&) + 46 45 swift 0x0000000000de2d07 swift::TypeChecker::solveForExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::FreeTypeVariableBinding, swift::ExprTypeCheckListener*, swift::constraints::ConstraintSystem&, llvm::SmallVectorImpl<swift::constraints::Solution>&, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>) + 119 46 swift 0x0000000000de92b9 swift::TypeChecker::typeCheckExpression(swift::Expr*&, swift::DeclContext*, swift::Type, swift::ContextualTypePurpose, swift::OptionSet<swift::TypeCheckExprFlags, unsigned int>, swift::ExprTypeCheckListener*) + 569 47 swift 0x0000000000dea430 swift::TypeChecker::typeCheckBinding(swift::Pattern*&, swift::Expr*&, swift::DeclContext*) + 112 48 swift 0x0000000000dea5d9 swift::TypeChecker::typeCheckPatternBinding(swift::PatternBindingDecl*, unsigned int) + 265 53 swift 0x0000000000e041d6 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150 54 swift 0x0000000000dd0542 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1490 55 swift 0x0000000000c7bb2f swift::CompilerInstance::performSema() + 2975 57 swift 0x00000000007753d7 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2487 58 swift 0x000000000076ffb5 main + 2773 Stack dump: 0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28234-swift-archetypebuilder-getgenericsignature.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28234-swift-archetypebuilder-getgenericsignature-17b60f.o 1. While type-checking 'A' at validation-test/compiler_crashers/28234-swift-archetypebuilder-getgenericsignature.swift:8:1 2. While type-checking expression at [validation-test/compiler_crashers/28234-swift-archetypebuilder-getgenericsignature.swift:9:7 - line:9:8] RangeText="F>" 3. While resolving type a at [validation-test/compiler_crashers/28234-swift-archetypebuilder-getgenericsignature.swift:10:62 - line:10:62] RangeText="a" <unknown>:0: error: unable to execute command: Aborted <unknown>:0: error: compile command failed due to signal (use -v to see invocation) ```
…ift-archetypebuilder-getgenericsignature [swiftc] Add test case for crash triggered in swift::ArchetypeBuilder::getGenericSignature(…)
…al-pep8 [gardening] Fix violations of non-controversial PEP8 rules (follow-up)
…::addSameTypeRequirementToConcrete(swift::ArchetypeBuilder::PotentialArchetype*, swift::Type, swift::RequirementSource) Stack trace: ``` 4 swift 0x0000000000efcd50 swift::ArchetypeBuilder::addSameTypeRequirementToConcrete(swift::ArchetypeBuilder::PotentialArchetype*, swift::Type, swift::RequirementSource) + 944 5 swift 0x0000000000efd61f swift::ArchetypeBuilder::addSameTypeRequirement(swift::Type, swift::Type, swift::RequirementSource) + 175 6 swift 0x0000000000efd7a0 swift::ArchetypeBuilder::addRequirement(swift::RequirementRepr const&) + 80 7 swift 0x0000000000e222d8 swift::TypeChecker::checkGenericParamList(swift::ArchetypeBuilder*, swift::GenericParamList*, swift::DeclContext*, bool, swift::GenericTypeResolver*) + 872 8 swift 0x0000000000e2392f swift::TypeChecker::validateGenericSignature(swift::GenericParamList*, swift::DeclContext*, swift::GenericSignature*, std::function<bool (swift::ArchetypeBuilder&)>, bool&) + 143 9 swift 0x0000000000e23ce4 swift::TypeChecker::validateGenericTypeSignature(swift::NominalTypeDecl*) + 116 10 swift 0x0000000000dfeac2 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 354 11 swift 0x0000000000ffbdac swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, unsigned int, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2908 12 swift 0x0000000000ffa750 swift::UnqualifiedLookup::UnqualifiedLookup(swift::DeclName, swift::DeclContext*, swift::LazyResolver*, bool, swift::SourceLoc, bool, bool) + 2384 13 swift 0x0000000000e25e3b swift::TypeChecker::lookupUnqualified(swift::DeclContext*, swift::DeclName, swift::SourceLoc, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 187 16 swift 0x0000000000e4f51e swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158 18 swift 0x0000000000e50484 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164 19 swift 0x0000000000e4f42a swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 42 21 swift 0x0000000000e224ec swift::TypeChecker::validateGenericFuncSignature(swift::AbstractFunctionDecl*) + 124 26 swift 0x0000000000e041e6 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150 27 swift 0x0000000000dd0552 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1490 28 swift 0x0000000000c7bb3f swift::CompilerInstance::performSema() + 2975 30 swift 0x0000000000775527 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2487 31 swift 0x0000000000770105 main + 2773 Stack dump: 0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28235-swift-archetypebuilder-addsametyperequirementtoconcrete.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28235-swift-archetypebuilder-addsametyperequirementtoconcrete-e4ca47.o 1. While type-checking 'A' at validation-test/compiler_crashers/28235-swift-archetypebuilder-addsametyperequirementtoconcrete.swift:7:10 2. While resolving type B at [validation-test/compiler_crashers/28235-swift-archetypebuilder-addsametyperequirementtoconcrete.swift:7:41 - line:7:41] RangeText="B" <unknown>:0: error: unable to execute command: Segmentation fault <unknown>:0: error: compile command failed due to signal (use -v to see invocation) ```
…ift-archetypebuilder-addsametyperequirementtoconcrete [swiftc] Add test case for crash triggered in swift::ArchetypeBuilder::addSameTypeRequirementToConcrete(…)
…eCheckDecl(swift::Decl*, bool) Stack trace: ``` swift: /path/to/swift/lib/Sema/TypeCheckDecl.cpp:3989: void (anonymous namespace)::DeclChecker::visitFuncDecl(swift::FuncDecl *): Assertion `!FD->getType()->hasTypeParameter()' failed. 12 swift 0x0000000000e041e6 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150 15 swift 0x0000000000e49b0a swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl*, swift::SourceLoc) + 362 16 swift 0x0000000000e4995e swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 46 17 swift 0x0000000000e4a528 swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) + 136 19 swift 0x0000000000dd0652 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1746 20 swift 0x0000000000c7bb3f swift::CompilerInstance::performSema() + 2975 22 swift 0x0000000000775527 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2487 23 swift 0x0000000000770105 main + 2773 Stack dump: 0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28236-swift-typebase-getmembersubstitutions.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28236-swift-typebase-getmembersubstitutions-699297.o 1. While type-checking getter for A at validation-test/compiler_crashers/28236-swift-typebase-getmembersubstitutions.swift:8:26 2. While type-checking 'a' at validation-test/compiler_crashers/28236-swift-typebase-getmembersubstitutions.swift:8:27 <unknown>:0: error: unable to execute command: Aborted <unknown>:0: error: compile command failed due to signal (use -v to see invocation) ```
Rewrite [x for x in y] as list(y)
The problem was that an associated type was always resolved with the nearest protocol `Self` as a reference, but in the case of nested protocols the associated type might be from the enclosing protocol leading to a crash. We now enumerate in a bottom-up way through the contexts until we have found the correct protocol which provides us with the `Self` reference to resolve the associated type.
`build-script-impl` currently maintains a list of `NATIVE_TOOLS_DEPLOYMENT_TARGETS` -- host machine targets, for which the resulting binaries can be run on the current machine. However, there is only ever *one* host machine. This commit: - Changes the `NATIVE_TOOLS_DEPLOYMENT_TARGETS` list parameter into a single string parameter, `HOST_TARGET`. - Promotes the logic to detect the host target to Python, and places it in the `swift_build_support` module. - Removes the hard-coded "macosx_x86_64" path to the LLVM and Clang TableGen -- thereby unblocking future work to make cross-compilation possible on platforms other than OS X. - Also promotes cross-compilation target validation to Python, placing it in the `swift_build_support` module.
[ASTDumper] Dump the trailing newline on the given stream
…ter-names [gardening] Avoid unnamed parameters. Use same names as in definition.
…tanceMember() const Stack trace: ``` 4 swift 0x0000000000fbfa81 swift::ValueDecl::isInstanceMember() const + 1 9 swift 0x0000000000e31bdf swift::TypeChecker::checkConformance(swift::NormalProtocolConformance*) + 2063 13 swift 0x0000000000e07226 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150 16 swift 0x0000000000e4cbaa swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl*, swift::SourceLoc) + 362 17 swift 0x0000000000e4c9fe swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 46 18 swift 0x0000000000e4d5c8 swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) + 136 20 swift 0x0000000000dd35a2 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int) + 1746 21 swift 0x0000000000c7d3df swift::CompilerInstance::performSema() + 2975 23 swift 0x0000000000775927 frontend_main(llvm::ArrayRef<char const*>, char const*, void*) + 2487 24 swift 0x0000000000770505 main + 2773 Stack dump: 0. Program arguments: /path/to/build/Ninja-ReleaseAssert/swift-linux-x86_64/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28244-swift-valuedecl-isinstancemember.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28244-swift-valuedecl-isinstancemember-b5b6a9.o 1. While type-checking getter for a at validation-test/compiler_crashers/28244-swift-valuedecl-isinstancemember.swift:8:30 2. While type-checking 'S' at validation-test/compiler_crashers/28244-swift-valuedecl-isinstancemember.swift:8:31 <unknown>:0: error: unable to execute command: Segmentation fault <unknown>:0: error: compile command failed due to signal (use -v to see invocation) ```
This reverts commit b1a7cea. Accounting for these operators can add complexity in some cases, so I'm backing out this change pending a more holistic approach.
…0128b [gardening] Fix recently introduced typos: "calles" → "called", "TOkens" → "Tokens"
…ift-valuedecl-isinstancemember [swiftc] Add test case for crash triggered in swift::ValueDecl::isInstanceMember()
This avoids too much inlining into a caller function (so far we only had limits based on the callee). rdar://problem/23228386
(1) We no longer put the Clang version string in our copy of or symlink to
Clang's resource directory.
(2) Newer Clang builds now generate a separate library for the Apple OS
simulators, instead of a fat binary.
We still need a proper end-to-end test for this, but that depends on
building compiler-rt with Swift, which isn't a standard config yet.
This reverts commit 0515889. I made a mistake and did not catch this regression when I measured the change on my local machine. The regression was detected by our automatic performance tests. Thank you @slavapestov for identifying the commit.
Add O(1) `contains()` implementation for Range with Comparable Element
…itialized after argc and argv are initialized. rdar://24250684 I reordered the CHECK statements in some tests to make them pass. I tested this on Darwin and Linux.
…icate Add .Always and .Never cases to StdlibUnittest's TestPredicate
These catch a regression I introduced with my previous patch that I reverted: <swiftlang@65dd0e7>
This comes with a fix for a null pointer dereference in _typeByName() that would pop with foreign classes that do not have a NominalTypeDescriptor. Also, I decided to back out part of the change for now, where the NominalTypeDescriptor references an accessor function instead of a pattern, since this broke LLDB, which reaches into the pattern to get the generic cache. Soon we will split off the generic cache from the pattern, and at that time we can change the NominalTypeDescriptor to point at the cache. But for now, let's avoid needless churn in LLDB by keeping that part of the setup unchanged.
using armv7 for now. Easy to update to thumbv7 later.