Commit Graph

22 Commits

Author SHA1 Message Date
LamTrinh.Dev
b9ec7744bf Update inherits_NSObject.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 22:58:24 +07:00
LamTrinh.Dev
129126d5f1 Update inherits_NSObject.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 18:04:03 +07:00
Tim Kientzle
03a0042ace API changes in SwiftRemoteMirror make these tests unsuitable for back-deployment testing 2020-03-07 13:13:23 -08:00
Jordan Rose
056979680d Revert "[reflection] Fix tests with bitwise_takable output"
This reverts commit b906348665.
2019-10-16 16:09:56 -07:00
Ivan Smetanin
b906348665 [reflection] Fix tests with bitwise_takable output 2019-10-16 09:03:55 +03:00
Mike Ash
3e7307b5ce [Reflection] Reenable inherits_ObjCClasses and inherits_NSObject tests on watchOS.
These are working again. I suspect that they were caused by a linker bug we've since worked around.

rdar://problem/50898688
2019-09-04 11:33:30 -04:00
Michael Gottesman
6f42934462 [test] Disable inherits_NSObject.swift on watchOS.
This was failing alongside inherits_ObjCClasses.swift (they were failing at the
same time).

Until MikeA has time to look at this disable this as well.

rdar://problem/50898688
2019-05-24 10:14:32 -07:00
Stephen Canon
fb8b9e143d SIMD into stdlib
Implements SE-0229.

Also updates simd module types in the Apple SDKs to use the new types, and updates a couple tests to work with the new types and protocols.
2018-11-29 17:09:01 -05:00
Slava Pestov
00c1279dbb Reflection: Compute if types are bitwise takable
Bitwise takability is now part of the layout of a type, because
non-bitwise takable types are never stored inline in an
existential or resilient global's buffer, even if they would
fit.

The basic rule is that weak references, unknown-refcounted
unowned references, and aggregates that contain them, are not
bitwise takable, whereas everything else is bitwise takable.

Also, since the bitwise takable for an unowned reference
depends on the reference counting style, we have to record the
superclass of a protocol, if any, to correctly determine the
reference counting style of the protocol existential.
2018-11-07 00:32:12 -05:00
Jordan Rose
b7aacec9ce [test] Fix swift-reflection-test issues for all test run environments (#19171)
I stopped trying to guess and actually tested them all, including the
Apple-internal tool I keep breaking. As a bonus, the RUN lines in
validation-test/Reflection/ go back to being simple.

rdar://problem/44154961
2018-09-06 16:05:56 -07:00
Jordan Rose
e3f3e939cb [test] Fix target-based reflection tests for real (#19098)
- Hard-link %target-swift-reflection-test into %t/ for %target-run
  implementations that copy executables, like remote-run.
- Use DYLD_LIBRARY_PATH to undo that for %target-run implementations
  that run the executable in place (host and simulators)

rdar://problem/43809613
2018-09-04 08:45:25 -07:00
Jordan Rose
11bddb49a0 [test] Temporarily disable Reflection tests on non-macOS (#19031)
utils/remote-run will only run things in %t.
An Apple-internal tool doesn't follow symlinks.
Normal macOS and simulator runs find the support libraries relative to
the binary.

I'm not sure what to do yet, but for now let's unbreak the
Apple-internal bots I broke in 01a0de2.
2018-08-29 11:38:27 -07:00
Jordan Rose
01a0de27ec [test] Update for remote-run-ing tests on a different macOS (#18966)
Most of this is just "remember to specify the inputs and outputs on
the command line, so remote-run can see them". A bit is "prefix
environment variables with '%env-'". And the last few are "yeah,
this was never going to work in a remote environment".

In the few cases where I couldn't think of anything reasonable, I just
marked the test as "UNSUPPORTED: remote_run", a new "feature".
2018-08-27 14:50:40 -07:00
Arnold Schwaighofer
5ebc6e77e7 Codesign the reflection tests 2018-08-09 09:18:04 -07:00
Joe Groff
3663c36284 IRGen: Begin NSObject subclass layout with an NSObject 'isa' header only.
We would lay out all classes starting with a Swift-style two-word header, even classes that inherit NSObject and therefore don't have Swift refcounting. The ObjC runtime would slide our ivars down for us at realization time, but it's nice to avoid unnecessarily dirtying memory in the not-uncommon case of direct NSObject subclasses.
2017-06-16 14:42:27 -07:00
Dmitri Gribenko
486cab447d tests: replace 'rm -rf %t && mkdir -p %t' with '%empty-directory(%t)'
These changes were made using a script.
2017-06-04 11:08:39 -07:00
Slava Pestov
1c7a50dcc5 Reflection: Fix class layout, again
There were a few problems here with subclasses of Objective-C classes.
Use the InstanceStart field from rodata to correctly lay out instance
variables, and verify the results match with dynamic and static layout.

Better fix for <rdar://problem/27932061>.
2016-11-16 19:31:18 -08:00
Slava Pestov
db79762c3b Reflection: Fix class layout start offset calculations
Fixes <rdar://problem/29115967>.
2016-11-11 03:13:22 -08:00
Dmitri Gribenko
d175b3b66d Migrate FileCheck to %FileCheck in tests 2016-08-10 23:52:02 -07:00
Slava Pestov
e33def826c Reflection: Fix inherits_NSObject test for 32-bit
Looks like class instances are still aligned on 16 byte boundaries
here, probably because of SIMD.
2016-06-03 00:13:04 -07:00
Slava Pestov
c9cd33bb0a Reflection: This test requires Objective-C interop 2016-06-02 19:34:08 -07:00
David Farler
492a26bf40 [SwiftRemoteMirror] Consider ObjCClass field descriptors when converting TypeInfos
@slava_pestov recently folded in @objc classes when building class field
descriptors - we just need to update the switch when considering records
for converting TypeRefs to TypeInfos.

rdar://problem/26594130
2016-06-02 17:39:35 -07:00