Commit Graph

35140 Commits

Author SHA1 Message Date
Chris Lattner 96dea07bdd Merge pull request #1848 from danra/patch-42
Use auto instead of repeating explicit class names
2016-03-24 22:38:54 -07:00
Chris Lattner a4a0118e38 Merge pull request #1855 from danra/patch-43
Use auto instead of repeating explicit class names
2016-03-24 22:37:40 -07:00
Chris Lattner 2753606c3e Merge pull request #1843 from danra/patch-38
Remove redundant else
2016-03-24 22:37:26 -07:00
Chris Lattner 4d64953776 Merge pull request #1862 from danra/patch-44
Fix includes order
2016-03-24 22:27:17 -07:00
Dmitri Gribenko de8322951c Merge pull request #1726 from compnerd/autolink-extract
build: install swift-autolink-extract always
2016-03-24 22:18:21 -07:00
Ted Kremenek 93e518c167 Merge pull request #1839 from danra/patch-34
isInvalid methods DRY
2016-03-24 22:09:21 -07:00
Ted Kremenek a180f65ef9 Merge pull request #1850 from aschwaighofer/string_runtime_tests
Add tests for recently added runtime functions
2016-03-24 22:06:26 -07:00
Vedant Kumar 5c36f5d0cf Merge pull request #1864 from vedantk/pgo
[Coverage] Make getEquivalentPGOLinkage exhaustive (NFC)
2016-03-24 18:06:55 -07:00
Xi Ge 218010afb9 [CodeCompletion] Check the module visibility properly to handle the multi-file case. rdar://24818863
Reported: http://stackoverflow.com/questions/36180575/struck-out-module-xcode-7-3
2016-03-24 17:44:46 -07:00
Xi Ge 8c523006ae swift-ide-test: Add an option to allow users to specify a second source file to test with. 2016-03-24 17:44:46 -07:00
swift-ci ecf1e10e5a Merge pull request #1844 from danra/patch-39
Merge pull request #${ghprbPullId} from ${ghprbPullAuthorLogin}/${ghprbSourceBranch} requested by ${ghprbTriggerAuthorLogin}
2016-03-24 17:33:26 -07:00
Vedant Kumar bcc54bf209 Do not check the top/bottom values in the switch 2016-03-24 17:13:29 -07:00
Doug Gregor 1889ea2657 Remove the default implementation of _ObjectiveCBridgeable._unconditionallyBridgeFromObjectiveC.
SILGen can't handle it yet, so pull it out until SILGen is fixed.
2016-03-24 17:10:26 -07:00
John McCall 3561aa5fe0 Support parent types on foreign type metadata.
This will eventually be required for C++.  It is also, apparently,
required for anonymous structs that are used as the type of a
named field.

Should unblock the Linux Foundation build.
2016-03-24 17:01:28 -07:00
Vedant Kumar 43abe6fa1b [Coverage] Make getEquivalentPGOLinkage exhaustive 2016-03-24 16:57:08 -07:00
Xin Tong f557a3253d Merge pull request #1857 from trentxintong/FSO
Rename FunctionSignatureOptCloner to FunctionSignatureOpts
2016-03-24 15:57:34 -07:00
rjmccall 0c5ff8db8f Merge pull request #1845 from danra/patch-40
Add missing word in DiverseListImpl comment
2016-03-24 15:56:11 -07:00
danra 653b282682 Fix includes order 2016-03-25 00:49:03 +02:00
Dan Raviv 9942cfc6a2 Add missing word in DiverseListImpl comment 2016-03-25 00:42:59 +02:00
John McCall 0ffb7278bc Only use metadata patterns for generic types; perform other
initialization in-place on demand.  Initialize parent metadata
references correctly on struct and enum metadata.

Also includes several minor improvements related to relative
pointers that I was using before deciding to simply switch the
parent reference to an absolute reference to get better access
patterns.

Includes a fix since the earlier commit to make enum metadata
writable if they have an unfilled payload size.  This didn't show
up on Darwin because "constant" is currently unenforced there in
global data containing relocations.

This patch requires an associated LLDB change which is being
submitted in parallel.
2016-03-24 15:10:31 -07:00
David Farler 790b7de5e4 Reenable building the SwiftReflectionTest library
This wasn't importing the Mach-O APIs from the right module.
2016-03-24 14:15:55 -07:00
Stephen Canon 7b1fddfbc1 Merge pull request #1835 from stephentyrone/simd-uint-vectors
Added uint[2,3,4] to simd, bridged to vector_uintN.
2016-03-24 17:08:26 -04:00
Xin Tong 5907b8a3e2 Rename FunctionSignatureOptCloner to FunctionSignatureOpts
Eventually, we decided to do this

1. Have the function signature opts (used to be called the cloner to create
the optimized function.
2. Mark the thunk as always_inline
3. Rely on the inliner to inline the thunk to get the benefit of calling optimized
function directly.
2016-03-24 12:50:12 -07:00
Xin Tong e0ba695d17 Merge pull request #1852 from trentxintong/FSO
Remove function signature rewriter and make function signature analysis a Util
2016-03-24 12:42:05 -07:00
David Farler e65f685a23 Temporarily disable SwiftReflectionTest library builds
Some Mach APIs don't appear to resolve on iOS.
2016-03-24 12:40:59 -07:00
Stephen Canon c9d4332f8b Added missing trailing newlines. 2016-03-24 15:31:58 -04:00
Vedant Kumar f9b79e4289 Merge pull request #1851 from vedantk/xcode-rt
Skip compiler-rt in Xcode-driven builds
2016-03-24 12:24:50 -07:00
Xi Ge 92d520c885 ModulePrinting: Using constraint solver to decide the right overload to print in synthesized extensions. 2016-03-24 12:16:51 -07:00
David Farler 76b31a9343 swift-reflection-test: Increase reading robustness
- Check return values from `read`
- Make the reflstr section optional, as it can be stripped by
  -strip-reflection-names.
2016-03-24 12:05:18 -07:00
David Farler 0f62e6691c Add SwiftReflectionTest helper library
This is a small helper library to communicate information back to
swift-reflection-test from a test swift executable. Each swift test
file under test/Reflection should link this library to get the main
test hook to send responses back to the test tool.
2016-03-24 12:05:18 -07:00
David Farler 0dcd813c02 FieldRecord: Guard when field name is null
Field name relative offsets can be null if -strip-reflection-names
is passed to the frontend.
2016-03-24 12:05:18 -07:00
David Farler 23a823a3ed Remote Mirrors: Make MemoryReader a real class
Make the reader a class interface internally, with the
bag-of-function pointers via the eventual C API being the
special case.
2016-03-24 12:05:18 -07:00
Arnold Schwaighofer 09e313f3fa Add tests for recently added runtime functions for string comparison/hashing 2016-03-24 11:46:09 -07:00
Xin Tong 9a3761000c Move function signature analysis to a Util
We really only need this signature analysis in the cloner pass now.
2016-03-24 11:17:47 -07:00
danra 21b0c52ad6 Use auto instead of repeating explicit class names 2016-03-24 20:09:06 +02:00
John McCall 946469d71a Don't look in the parent metadata fields of structs and enums for
fulfillments, because we don't actually fill them in.

This is a minimal, temporary, speculative fix for the failure
described in rdar://25069637, for which I unfortunately do not have
a minimal test case and which I have been unable to duplicate in
my own testing due to various language restrictions that I hope
to lift given the better (but temporarily reverted) fix.
2016-03-24 11:03:52 -07:00
Chris Lattner 5ab39a8bc4 Merge pull request #1853 from danra/patch-12
Add missing period in end of DiverseStack comment (NFC)
2016-03-24 10:52:52 -07:00
Xin Tong 3f075dfe47 Remove function signature rewriter.
We decided to use the inliner to rewrite the caller's callsites.

And eventually I will turn FunctionSignatureAnalysis into a Utility.
As its data should only be used and kept in the cloner pass.
2016-03-24 10:50:47 -07:00
Xin Tong c44006aa9d Merge pull request #1824 from trentxintong/RLE
Make sure non-epilogue releases do not kill redundant loads
2016-03-24 10:48:21 -07:00
danra b41ccbd58a Add missing period in end of DiverseStack comment (NFC) 2016-03-24 19:41:42 +02:00
Xin Tong 0a562b7fe1 Merge pull request #1847 from trentxintong/FSO
Make FSO thunks always_inline.
2016-03-24 10:38:38 -07:00
Vedant Kumar 708c6409b0 Skip compiler-rt in Xcode-driven builds 2016-03-24 10:36:26 -07:00
Dmitri Gribenko 7907b4b0de Merge pull request #1828 from danra/patch-25
Make nodeToString brief comment clearer (NFC)
2016-03-24 10:24:41 -07:00
Dmitri Gribenko 4e3f926409 Merge pull request #1846 from danra/patch-41
Fix DiverseListImpl comment grammar
2016-03-24 10:21:28 -07:00
danra 9ff4ee43a5 Use auto instead of repeating explicit class names 2016-03-24 18:18:51 +02:00
Xin Tong 2a63907a17 Make FSO thunks always_inline.
This forces the callsites to be rewritten by the inliner.

we have the issue that the thunk changes from the time the its created to
the time its reread to figure out what we have done to the original function

This results in missed opportunities.

This solution solves the problem gracefully, because the thunk carries the information
on how to set up the call to the optimized functions.

Inlining the thunk makes the callsite calling the optimized function for free. i.e.
without any rewriting.

I did not measure any regression with this change.
2016-03-24 09:18:13 -07:00
danra 25bda30cfd Fix DiverseListImpl comment grammar 2016-03-24 18:12:32 +02:00
danra 9cb3e763cd operator!= DRY 2016-03-24 18:07:59 +02:00
danra 2b1d4a763d Remove redundant else 2016-03-24 18:05:06 +02:00
Xin Tong 7ff5156cc2 Merge pull request #1827 from trentxintong/FSO
Minor refactor in Epilogue Retain/Release matchers
2016-03-24 08:48:04 -07:00