Skip to content

deleted #4970

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 208 commits into from
Closed

deleted #4970

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
208 commits
Select commit Hold shift + click to select a range
4416d15
[c++-interop] Test that APINotes handles ObjCMethods while in C++-Int…
plotfi Mar 24, 2022
2aa1642
[lldb] Prevent object file plugins from changing the data buffer
JDevlieghere Apr 4, 2022
82afae0
The test added to TestContainerCommands.py cherry-picked
jimingham Apr 4, 2022
f67bd2c
Merge pull request #4166 from apple/🍒/austria/c69307e5eeb5
JDevlieghere Apr 5, 2022
201cf8c
Change the LLVM signpost category
JDevlieghere Apr 5, 2022
6ae3f8a
[lldb] Return a DataBuffer from FileSystem::CreateDataBuffer (NFC)
JDevlieghere Mar 31, 2022
5bcb758
[lldb] Remove remaining calls to DataBufferLLVM::GetChars
JDevlieghere Apr 2, 2022
45873bb
Modify DataEncoder to be able to encode data in an object owned buffer.
clayborg Dec 7, 2021
363b780
Fix buildbots after https://reviews.llvm.org/D115073.
clayborg Dec 7, 2021
f9c9b5f
[lldb] Refactor DataBuffer so we can map files as read-only
JDevlieghere Apr 1, 2022
211df5e
[lldb] Downstream changes for fc54427e76c89e567390dd4a1d64a65568f4ec26
JDevlieghere Apr 5, 2022
a8228a2
[lldb] Change CreateMemoryInstance to take a WritableDataBuffer
JDevlieghere Apr 5, 2022
4f4c6a1
[lldb] Update reinterpret_cast in linux/Host.cpp
JDevlieghere Apr 5, 2022
a92b319
[lldb] Update the NativeRegisterContext to take a WritableMemoryBuffer
JDevlieghere Apr 5, 2022
8d8f2b9
[lldb] Add missing const to NativeRegisterContextLinux_x86_64
JDevlieghere Apr 5, 2022
8280173
[lldb] Add missing const to NativeRegisterContextLinux_arm
d0k Apr 5, 2022
c616e02
[lldb] Add more missing consts in NativeRegisterContexts
JDevlieghere Apr 5, 2022
d4b637c
[lldb] Update ReadAllRegisterValues in RegisterContextWindows
JDevlieghere Apr 5, 2022
d90d25c
Fix buildbot after https://reviews.llvm.org/D115073.
clayborg Dec 7, 2021
f8e84b9
Merge pull request #4172 from apple/🍒/austria/e9ec16177f2b675829a7b73…
JDevlieghere Apr 6, 2022
da18402
Merge pull request #4168 from jimingham/fix-container-test
JDevlieghere Apr 6, 2022
f2330e6
Merge pull request #4176 from apple/jdevlieghere/rdar/74890607
JDevlieghere Apr 6, 2022
2dff8fc
[modules] Merge ObjC interface ivars with anonymous types.
vsapsai Jan 29, 2022
ca540bf
Merge pull request #4118 from plotfi/stable/20211026
hyp Apr 6, 2022
fe4de1a
[debug-info] Only hoist the first dbg inst associated with an async d…
gottesmm Apr 2, 2022
fc22df8
[lldb] Gardening: When testing use self.process.Continue() instead of…
gottesmm Apr 4, 2022
e7c3122
[lldb] Simplify logic in a test by using lldbutil.run_to_source_break…
gottesmm Apr 4, 2022
21ddd13
[lldb] When matching entry values for async swift function, fallback …
gottesmm Apr 5, 2022
4237725
Merge commit '3a5d62dfaeb0' from swift/release/5.7 into stable/20211026
Apr 7, 2022
097ecdd
Merge commit '31cd5cea0a2c' from swift/release/5.7 into stable/20211026
Apr 7, 2022
f7f24f2
Merge commit '1b0796a9956b' from swift/release/5.7 into stable/20211026
Apr 7, 2022
4a0ee04
Merge commit '00cf31477e70' from swift/release/5.7 into stable/20211026
Apr 7, 2022
f2faad6
Merge commit 'f42eec7b2894' from swift/release/5.7 into stable/20211026
Apr 7, 2022
9cf3f2c
Merge commit '43f077f8d197' from swift/release/5.7 into stable/20211026
Apr 7, 2022
90126ed
Merge pull request #4161 from gottesmm/stable/20211026/hoist_first_as…
gottesmm Apr 7, 2022
9bd9eaa
Merge commit 'baa4b0771abd' from swift/release/5.7 into stable/20211026
Apr 7, 2022
bb7d0c2
Merge commit '26233662f9d5' from swift/release/5.7 into stable/20211026
Apr 8, 2022
170a8f1
Merge commit '0207587a8c42' from swift/release/5.7 into stable/20211026
Apr 8, 2022
0d7c320
Merge commit '0c4553272f57' from swift/release/5.7 into stable/20211026
Apr 8, 2022
290e12a
Merge commit '71501c9fa7f6' from swift/release/5.7 into stable/20211026
Apr 8, 2022
7198b88
Simplify NativeHashedStorageHandler()
adrian-prantl Apr 8, 2022
6e086cb
Avoid redundant computation of GetByteStride. (NFC)
adrian-prantl Apr 8, 2022
2ed64cb
Remove redundant argument (NFC)
adrian-prantl Apr 8, 2022
db6a7ba
Merge commit 'cc22f677bff2' from swift/release/5.7 into stable/20211026
Apr 9, 2022
18a60ba
Print a hint about using frame variable when self cannot be reconstru…
adrian-prantl Mar 31, 2022
7bdabcd
Merge commit '96e7933ff394' from swift/release/5.7 into stable/20211026
Apr 9, 2022
c6652f6
Merge commit '284540d2f884' from swift/release/5.7 into stable/20211026
Apr 11, 2022
0c27db5
Merge pull request #4199 from adrian-prantl/91291458
adrian-prantl Apr 11, 2022
522a7a6
Merge pull request #4157 from adrian-prantl/self-hint
adrian-prantl Apr 11, 2022
4527044
Adjust to Swift API changes.
rjmccall Apr 12, 2022
292d2d9
Merge commit 'ec239e301d54' from swift/release/5.7 into stable/20211026
Apr 12, 2022
eb7031e
Merge pull request #4209 from rjmccall/update-for-existential-layout-…
rjmccall Apr 12, 2022
d6cafc1
Merge commit '1c3039bfe2f0' from swift/release/5.7 into stable/20211026
Apr 13, 2022
328b879
Merge commit '617e09a3e9d3' from swift/release/5.7 into stable/20211026
Apr 13, 2022
046883b
Merge commit '7da4e7858af5' from swift/release/5.7 into stable/20211026
Apr 13, 2022
3ff638a
Restore previous search path discovery behavior.
adrian-prantl Apr 9, 2022
e0e259c
Merge commit 'a7da807e9b66' from swift/release/5.7 into stable/20211026
Apr 15, 2022
5ceaae5
[clang] Do not duplicate "EnableSplitLTOUnit" module flag
david-greene-cb Oct 6, 2021
fe8d099
Merge commit '6ecbe135812b' from swift/release/5.7 into stable/20211026
Apr 15, 2022
39d5d1a
Merge commit '4b6131dfc9d3' from swift/release/5.7 into stable/20211026
Apr 15, 2022
a645568
Merge commit '2acb43982f1f' from swift/release/5.7 into stable/20211026
Apr 15, 2022
570a0cc
Merge commit '1f7daca84a6e' from swift/release/5.7 into stable/20211026
Apr 15, 2022
1f0ced6
Merge pull request #4203 from adrian-prantl/91509016
adrian-prantl Apr 15, 2022
5f00218
Merge commit '8bbf73b53c59' from swift/release/5.7 into stable/20211026
Apr 16, 2022
6f0d5a4
lldb/Windows: synchronize the sources with upstream
compnerd Apr 17, 2022
1aa2266
Merge pull request #4231 from compnerd/paths
compnerd Apr 17, 2022
b925b75
Merge commit '52aa97b68958' from swift/release/5.7 into stable/20211026
Apr 19, 2022
d428c6b
Merge commit 'b7d667c8bfaa' from swift/release/5.7 into stable/20211026
Apr 19, 2022
02205ff
Merge commit '11f504805788' from swift/release/5.7 into stable/20211026
Apr 19, 2022
89d91b0
Fix potential nullptr deref.
adrian-prantl Apr 19, 2022
aa0fec1
[clang][Sema] Add flag to LookupName to force C/ObjC codepath
bulbazord Apr 18, 2022
296fc35
Merge commit '395f26794e0a' from swift/release/5.7 into stable/20211026
Apr 20, 2022
d7d45b4
Merge pull request #4239 from adrian-prantl/91699573
adrian-prantl Apr 20, 2022
2e0d56d
Merge commit '81481d89b405' from swift/release/5.7 into stable/20211026
Apr 20, 2022
0f7d600
Merge commit '6f106e7ca517' from swift/release/5.7 into stable/20211026
Apr 20, 2022
e265598
Merge pull request #4240 from bulbazord/cherry-pick-objcxx-patch
hyp Apr 20, 2022
37211af
Merge commit '2bd8e2058040' from swift/release/5.7 into stable/20211026
Apr 21, 2022
0111970
Merge commit 'bf8b10b93ff8' from swift/release/5.7 into stable/20211026
Apr 22, 2022
684fc03
AArch64: change the location of the Swift async frame record
compnerd Apr 24, 2022
25d6ca4
Merge commit 'a177fc627109' from swift/release/5.7 into stable/20211026
Apr 25, 2022
3458afa
[Index] Remove reference to `UnresolvedUsingIfExists`
bnbarham Apr 22, 2022
86c1029
Merge pull request #4250 from compnerd/record
compnerd Apr 26, 2022
570b5d1
Merge commit 'dca5b94a5459' from swift/release/5.7 into stable/20211026
Apr 26, 2022
7bbb7c6
Merge pull request #4256 from bnbarham/cherry-unresolved-if-exists-20…
bnbarham Apr 26, 2022
664374a
Merge commit '048461e7ef49' from swift/release/5.7 into stable/20211026
Apr 26, 2022
6d71904
Merge commit 'f1866d62b17e' from swift/release/5.7 into stable/20211026
Apr 29, 2022
b24103e
Merge commit 'fe94798437c3' from swift/release/5.7 into stable/20211026
Apr 29, 2022
f01548c
Merge commit '077918ff0da8' from swift/release/5.7 into stable/20211026
Apr 30, 2022
cd62c18
Merge commit 'acf80d8286ad' from swift/release/5.7 into stable/20211026
May 3, 2022
38bc081
Merge commit '4bda4b4f1b59' from swift/release/5.7 into stable/20211026
May 4, 2022
1e93714
Merge commit '9fa2b9f5fbc6' from swift/release/5.7 into stable/20211026
May 4, 2022
06a5d59
Merge commit '291b5c5e07e2' from swift/release/5.7 into stable/20211026
May 4, 2022
2f91a0d
Merge commit 'cbb772d15a70' from swift/release/5.7 into stable/20211026
May 4, 2022
01f07aa
Merge commit '324cc8dfea28' from swift/release/5.7 into stable/20211026
May 4, 2022
63c3954
Merge commit 'ad4c1b31b337' from swift/release/5.7 into stable/20211026
May 5, 2022
da3b468
Merge commit '0824c88551ad' from swift/release/5.7 into stable/20211026
May 5, 2022
571eba8
Merge commit '6da193a3ea2a' from swift/release/5.7 into stable/20211026
May 5, 2022
b863d90
Merge commit 'cc89682d4315' from swift/release/5.7 into stable/20211026
May 6, 2022
43843aa
Merge commit 'f0b5a511bf02' from swift/release/5.7 into stable/20211026
May 6, 2022
ec21a27
Merge commit '58e937c06217' from swift/release/5.7 into stable/20211026
May 6, 2022
80f559e
Support remapping index store paths
DavidGoldman Mar 31, 2022
6a543c3
Merge commit '864a71ec8af6' from swift/release/5.7 into stable/20211026
May 6, 2022
fb8e3b3
Merge commit '613c62f64609' from swift/release/5.7 into stable/20211026
May 8, 2022
f3673d9
Merge commit '9776194bc86a' from swift/release/5.7 into stable/20211026
May 9, 2022
23fd8fc
Merge commit 'a7b829bc52bd' from swift/release/5.7 into stable/20211026
May 9, 2022
099d170
Merge commit '9641100bbfaf' from swift/release/5.7 into stable/20211026
May 9, 2022
017551a
Make sure more specific remappings come first
DavidGoldman May 10, 2022
9aeb35d
Merge commit '80b01a582cb9' from swift/release/5.7 into stable/20211026
May 11, 2022
1f74f25
Merge commit '558e8bdfc4c1' from swift/release/5.7 into stable/20211026
May 11, 2022
58ca6fa
Merge commit 'e197a59338cb' from swift/release/5.7 into stable/20211026
May 11, 2022
a8feb2d
Merge commit '2bb1dd7c45c5' from swift/release/5.7 into stable/20211026
May 12, 2022
c2589a7
Merge commit 'e9e33977c404' from swift/release/5.7 into stable/20211026
May 12, 2022
e77afb2
[test] Add lit helper for windows paths
keith Feb 26, 2022
76db115
Merge pull request #4677 from compnerd/111457
compnerd May 13, 2022
bfd18b8
Add test for remappings where one is a prefix of another
DavidGoldman May 13, 2022
fcfcf6e
Merge pull request #4267 from DavidGoldman/stable/20211026
bnbarham May 16, 2022
3e5dd16
Merge commit 'ca3c4abe249d' from swift/release/5.7 into stable/20211026
May 16, 2022
20addd9
Merge commit '936edc681047' from swift/release/5.7 into stable/20211026
May 17, 2022
03a90ec
Merge commit '8349b2590ac9' from swift/release/5.7 into stable/20211026
May 17, 2022
3bd3d12
Merge commit '9fde71b269b4' from swift/release/5.7 into stable/20211026
May 17, 2022
ab15cb5
[lldb] Update use of swift::ser::validateSerializedAST to new API
xymus May 17, 2022
dd4e712
[cxx-interop] Allow Swift to extract libstdc++ installation path from…
egorzhdan May 18, 2022
515f8ef
Merge pull request #4693 from apple/egorzhdan/libstdcxx-path-20211026
egorzhdan May 18, 2022
6c0442b
Merge pull request #4692 from xymus/lldb-swiftmodule-per-sdk
xymus May 18, 2022
2d9380d
Merge commit '22f1075763a3' from swift/release/5.7 into stable/20211026
May 19, 2022
5fd3355
Merge commit 'aa4bcbc49782' from swift/release/5.7 into stable/20211026
May 20, 2022
6e07dc1
Merge commit '97f1aa4972d0' from swift/release/5.7 into stable/20211026
May 20, 2022
d55f2c0
Merge pull request #4228 from kateinoigakukun/katei/cherry-pick-53adf…
compnerd May 21, 2022
73ebbf6
Merge commit 'cfaa54ccc6e5' from swift/release/5.7 into stable/20211026
May 21, 2022
63d26df
Merge commit 'a2dd486eee70' from swift/release/5.7 into stable/20211026
May 23, 2022
538fdea
[lldb] Update test_software_breakpoint_set_and_remove_work for AS
JDevlieghere May 19, 2022
1e5be0f
[lldb] Set correct register number for cpsr (GENERIC_REGNUM_FLAGS)
JDevlieghere May 20, 2022
67ca5c0
Merge pull request #4720 from apple/🍒/austria/b9a30b69d814+a1cf154dd476
JDevlieghere May 23, 2022
efb6ad4
Merge commit '1a0ab677598c' from swift/release/5.7 into stable/20211026
May 24, 2022
7e8a36f
Merge commit '8e550ca99fd4' from swift/release/5.7 into stable/20211026
May 25, 2022
5a0a698
Merge commit '75cd916c176f' from swift/release/5.7 into stable/20211026
May 25, 2022
2974a4e
Merge commit 'ca7e45531df3' from swift/release/5.7 into stable/20211026
May 26, 2022
3cb7b37
[clang] Correctly(?) handle placeholder types in ExprRequirements. (#…
ahatanaka May 27, 2022
c69436e
[Clang][Driver] Fix include paths for `--sysroot /` on Linux
egorzhdan May 24, 2022
b07e771
Merge pull request #4761 from apple/egorzhdan/linux-sysroot-slash_202…
egorzhdan May 27, 2022
aac6ffa
Merge commit 'a1c63d5409a7' from swift/release/5.7 into stable/20211026
May 31, 2022
1eed785
Merge commit 'd336db23a155' from swift/release/5.7 into stable/20211026
Jun 1, 2022
4287217
Merge commit 'c4df8932b3e0' from swift/release/5.7 into stable/20211026
Jun 1, 2022
3e60662
Merge commit '68920b56560c' from swift/release/5.7 into stable/20211026
Jun 1, 2022
4fc3048
Merge commit 'f2368569373e' from swift/release/5.7 into stable/20211026
Jun 2, 2022
f3c1157
Merge commit '5e9378fc2904' from swift/release/5.7 into stable/20211026
Jun 2, 2022
86cedb5
Merge commit '685cac92740b' from swift/release/5.7 into stable/20211026
Jun 2, 2022
278d67f
Merge commit 'c29ca0299910' from swift/release/5.7 into stable/20211026
Jun 2, 2022
5b05dc4
[coro async] Add code to support dynamic aligment of over-aligned typ…
aschwaighofer Jun 3, 2022
d540f38
Merge pull request #4797 from aschwaighofer/coro_async_frame_dynamic_…
aschwaighofer Jun 3, 2022
e708aeb
Merge commit '08da77912e30' from swift/release/5.7 into stable/20211026
Jun 6, 2022
e4dd239
[C++-Interop] Use the QualType name for an anonymous enum in APINotes…
plotfi May 26, 2022
fdfb8ac
Merge commit 'fc0ab39bda0c' from swift/release/5.7 into stable/20211026
Jun 6, 2022
de7e156
[lldb] Fix 'ptsname_r' is only available on macOS 10.13.4 or newer
JDevlieghere May 19, 2022
db30736
[lldb] Fix an unused function warning
kazutakahirata May 25, 2022
b2416e1
Merge pull request #4808 from apple/🍒/austria/ea4864007c72bfe1523013e…
JDevlieghere Jun 8, 2022
85bf339
Merge pull request #4744 from plotfi/stable/20211026
hyp Jun 9, 2022
2ec47d2
Merge commit 'aa37fee87af3' from swift/release/5.7 into stable/20211026
Jun 13, 2022
3061d43
Merge commit '7305d4d60133' from swift/release/5.7 into stable/20211026
Jun 14, 2022
272101b
Merge commit '1376c15930fe' from swift/release/5.7 into stable/20211026
Jun 14, 2022
f91b7dd
Merge commit '7dbea95bd710' from swift/release/5.7 into stable/20211026
Jun 14, 2022
caee469
Merge commit 'a619373d7509' from swift/release/5.7 into stable/20211026
Jun 15, 2022
092f0cf
Merge commit 'b3452b3a23c9' from swift/release/5.7 into stable/20211026
Jun 15, 2022
1032f41
Merge commit 'a25a6f5cbb5c' from swift/release/5.7 into stable/20211026
Jun 15, 2022
2876a68
Merge commit '9566c588bb80' from swift/release/5.7 into stable/20211026
Jun 15, 2022
29d5701
Merge commit 'ef30adb00225' from swift/release/5.7 into stable/20211026
Jun 15, 2022
c5a6d6f
Merge commit 'c0fb08890dbc' from swift/release/5.7 into stable/20211026
Jun 17, 2022
26e46a7
Merge commit '5414d9a98ede' from swift/release/5.7 into stable/20211026
Jun 17, 2022
bd7fc9a
Merge commit '0da8080c2148' from swift/release/5.7 into stable/20211026
Jun 17, 2022
0c2f2a5
Merge commit 'a58e29926ec3' from swift/release/5.7 into stable/20211026
Jun 17, 2022
15f70c8
Merge commit 'ce9222e33037' from swift/release/5.7 into stable/20211026
Jun 21, 2022
d8f916b
Merge commit '9abd5eaec55c' from swift/release/5.7 into stable/20211026
Jun 21, 2022
9880f12
Merge commit 'e72e19234d40' from swift/release/5.7 into stable/20211026
Jun 22, 2022
40582bc
Merge commit 'bc015f6f17aa' from swift/release/5.7 into stable/20211026
Jun 22, 2022
ab52eb3
Merge commit '36a4b71caa79' from swift/release/5.7 into stable/20211026
Jun 22, 2022
2a464b0
Merge commit 'fe664d18cd59' from swift/release/5.7 into stable/20211026
Jun 22, 2022
8852b49
Merge commit '6e9576c0e8de' from swift/release/5.7 into stable/20211026
Jun 22, 2022
0872120
[clang] Add deployment target env vars to features.json
jansvoboda11 Jun 6, 2022
01c7e25
Merge commit '5a31f29e2679' from swift/release/5.7 into stable/20211026
Jun 24, 2022
b0e7572
Merge commit '9db14b122f13' from swift/release/5.7 into stable/20211026
Jun 24, 2022
c24fa88
Merge commit 'be0adf9926f3' from swift/release/5.7 into stable/20211026
Jun 24, 2022
174f880
Merge commit '44e155a0cf1c' from swift/release/5.7 into stable/20211026
Jun 24, 2022
47bfcd2
Merge commit '5dfda22276f8' from swift/release/5.7 into stable/20211026
Jun 24, 2022
3712170
Merge commit '143dfba5e1a7' from swift/release/5.7 into stable/20211026
Jun 24, 2022
a03f201
Merge commit '430cfff05809' from swift/release/5.7 into stable/20211026
Jun 24, 2022
befe816
Merge commit 'eecf02df5133' from swift/release/5.7 into stable/20211026
Jun 24, 2022
345bd4e
Merge commit '15cd482c66b8' from swift/release/5.7 into stable/20211026
Jun 29, 2022
862cd9f
Merge commit 'c94b55955148' from swift/release/5.7 into stable/20211026
Jun 30, 2022
765ae34
[cxx-interop] Allow Swift to get a Clang Toolchain from the Driver
egorzhdan Jun 30, 2022
5e6723f
[lldb] TSSTypeRef::GetBitSize fallback to SASTContext if runtime fails
augusto2112 Jun 30, 2022
2327306
Merge pull request #4914 from augusto2112/tsstyperef-getbitsize-fallback
augusto2112 Jun 30, 2022
5189711
[lldb] Avoid conflict between mach/machine.h and llvm/BinaryFormat/Ma…
JDevlieghere Jun 30, 2022
727c105
Merge pull request #4919 from apple/jdevlieghere/rdar/96148553
JDevlieghere Jul 1, 2022
116acf4
Merge pull request #4910 from apple/egorzhdan/toolchain-stable20211026
egorzhdan Jul 1, 2022
5931c1e
[lldb] Pass likely module names to reflection parsing machinery
augusto2112 Jul 1, 2022
b109b05
[lldb] Skip validation of CGPoint in TypeSystemSwiftTypeRef
augusto2112 Jun 30, 2022
f42d4c4
Revert "[cxx-interop] Allow Swift to extract libstdc++ installation p…
egorzhdan Jul 4, 2022
ebd49bd
Merge pull request #4930 from apple/egorzhdan/revert-libstdcxx-stable…
egorzhdan Jul 5, 2022
c44b030
Merge commit 'fd1ac0ed52c1' from swift/release/5.7 into stable/20211026
Jul 6, 2022
396c696
Merge commit 'be3823b722c4' from swift/release/5.7 into stable/20211026
Jul 6, 2022
1d75a24
Merge commit '353ca7d215c7' from swift/release/5.7 into stable/20211026
Jul 6, 2022
d6b0284
Merge pull request #4927 from augusto2112/pass-likely-module-names
augusto2112 Jul 7, 2022
7894920
Merge pull request #4803 from apple/jan_svoboda/features_json
jansvoboda11 Jul 8, 2022
21d1b51
[lldb] Handle unsupported type in GetPointerType (#4954)
kastiglione Jul 8, 2022
14571fc
Merge pull request #4915 from augusto2112/tsstyperef-skip-cgpoint-val…
augusto2112 Jul 8, 2022
bd78ff3
Merge commit 'ecf60f9cdb97' from swift/release/5.7 into stable/20211026
Jul 8, 2022
05048af
Merge commit '3eb3b067919b' from swift/release/5.7 into stable/20211026
Jul 13, 2022
ed878fe
[lldb] Be aware of async functions in the form of closures (#4966)
kastiglione Jul 14, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions clang/include/clang/Driver/Driver.h
Original file line number Diff line number Diff line change
Expand Up @@ -586,6 +586,7 @@ class Driver {
/// compilation based on which -f(no-)?lto(=.*)? option occurs last.
void setLTOMode(const llvm::opt::ArgList &Args);

public:
/// Retrieves a ToolChain for a particular \p Target triple.
///
/// Will cache ToolChains for the life of the driver object, and create them
Expand All @@ -594,6 +595,7 @@ class Driver {
const llvm::Triple &Target) const;

/// @}
private:

/// Get bitmasks for which option flags to include and exclude based on
/// the driver mode.
Expand Down
3 changes: 3 additions & 0 deletions clang/include/clang/Driver/ToolChain.h
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,9 @@ class ToolChain {
static void addSystemIncludes(const llvm::opt::ArgList &DriverArgs,
llvm::opt::ArgStringList &CC1Args,
ArrayRef<StringRef> Paths);

static std::string concat(StringRef Path, const Twine &A, const Twine &B = "",
const Twine &C = "", const Twine &D = "");
///@}

public:
Expand Down
4 changes: 2 additions & 2 deletions clang/include/clang/Sema/Sema.h
Original file line number Diff line number Diff line change
Expand Up @@ -4149,8 +4149,8 @@ class Sema final {
= NotForRedeclaration);
bool LookupBuiltin(LookupResult &R);
void LookupNecessaryTypesForBuiltin(Scope *S, unsigned ID);
bool LookupName(LookupResult &R, Scope *S,
bool AllowBuiltinCreation = false);
bool LookupName(LookupResult &R, Scope *S, bool AllowBuiltinCreation = false,
bool ForceNoCPlusPlus = false);
bool LookupQualifiedName(LookupResult &R, DeclContext *LookupCtx,
bool InUnqualifiedLookup = false);
bool LookupQualifiedName(LookupResult &R, DeclContext *LookupCtx,
Expand Down
9 changes: 7 additions & 2 deletions clang/lib/AST/ASTContext.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3378,8 +3378,9 @@ QualType ASTContext::getBlockPointerType(QualType T) const {
/// lvalue reference to the specified type.
QualType
ASTContext::getLValueReferenceType(QualType T, bool SpelledAsLValue) const {
assert(getCanonicalType(T) != OverloadTy &&
"Unresolved overloaded function type");
assert((!T->isPlaceholderType() ||
T->isSpecificPlaceholderType(BuiltinType::UnknownAny)) &&
"Unresolved placeholder type");

// Unique pointers, to guarantee there is only one pointer of a particular
// structure.
Expand Down Expand Up @@ -3417,6 +3418,10 @@ ASTContext::getLValueReferenceType(QualType T, bool SpelledAsLValue) const {
/// getRValueReferenceType - Return the uniqued reference to the type for an
/// rvalue reference to the specified type.
QualType ASTContext::getRValueReferenceType(QualType T) const {
assert((!T->isPlaceholderType() ||
T->isSpecificPlaceholderType(BuiltinType::UnknownAny)) &&
"Unresolved placeholder type");

// Unique pointers, to guarantee there is only one pointer of a particular
// structure.
llvm::FoldingSetNodeID ID;
Expand Down
20 changes: 12 additions & 8 deletions clang/lib/CodeGen/BackendUtil.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1036,8 +1036,9 @@ void EmitAssemblyHelper::EmitAssemblyWithLegacyPassManager(
if (!ThinLinkOS)
return;
}
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
CodeGenOpts.EnableSplitLTOUnit);
if (!TheModule->getModuleFlag("EnableSplitLTOUnit"))
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
CodeGenOpts.EnableSplitLTOUnit);
PerModulePasses.add(createWriteThinLTOBitcodePass(
*OS, ThinLinkOS ? &ThinLinkOS->os() : nullptr));
} else {
Expand All @@ -1051,8 +1052,9 @@ void EmitAssemblyHelper::EmitAssemblyWithLegacyPassManager(
if (EmitLTOSummary) {
if (!TheModule->getModuleFlag("ThinLTO"))
TheModule->addModuleFlag(Module::Error, "ThinLTO", uint32_t(0));
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
uint32_t(1));
if (!TheModule->getModuleFlag("EnableSplitLTOUnit"))
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
uint32_t(1));
}

PerModulePasses.add(createBitcodeWriterPass(
Expand Down Expand Up @@ -1454,8 +1456,9 @@ void EmitAssemblyHelper::RunOptimizationPipeline(
if (!ThinLinkOS)
return;
}
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
CodeGenOpts.EnableSplitLTOUnit);
if (!TheModule->getModuleFlag("EnableSplitLTOUnit"))
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
CodeGenOpts.EnableSplitLTOUnit);
MPM.addPass(ThinLTOBitcodeWriterPass(*OS, ThinLinkOS ? &ThinLinkOS->os()
: nullptr));
} else {
Expand All @@ -1468,8 +1471,9 @@ void EmitAssemblyHelper::RunOptimizationPipeline(
if (EmitLTOSummary) {
if (!TheModule->getModuleFlag("ThinLTO"))
TheModule->addModuleFlag(Module::Error, "ThinLTO", uint32_t(0));
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
uint32_t(1));
if (!TheModule->getModuleFlag("EnableSplitLTOUnit"))
TheModule->addModuleFlag(Module::Error, "EnableSplitLTOUnit",
uint32_t(1));
}
MPM.addPass(
BitcodeWriterPass(*OS, CodeGenOpts.EmitLLVMUseLists, EmitLTOSummary));
Expand Down
8 changes: 8 additions & 0 deletions clang/lib/Driver/ToolChain.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -876,6 +876,14 @@ void ToolChain::addExternCSystemIncludeIfExists(const ArgList &DriverArgs,
}
}

/*static*/ std::string ToolChain::concat(StringRef Path, const Twine &A,
const Twine &B, const Twine &C,
const Twine &D) {
SmallString<128> Result(Path);
llvm::sys::path::append(Result, llvm::sys::path::Style::posix, A, B, C, D);
return std::string(Result);
}

std::string ToolChain::detectLibcxxVersion(StringRef IncludePath) const {
std::error_code EC;
int MaxVersion = 0;
Expand Down
22 changes: 11 additions & 11 deletions clang/lib/Driver/ToolChains/Gnu.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1957,7 +1957,7 @@ void Generic_GCC::GCCInstallationDetector::init(
if (!VFS.exists(Prefix))
continue;
for (StringRef Suffix : CandidateLibDirs) {
const std::string LibDir = Prefix + Suffix.str();
const std::string LibDir = concat(Prefix, Suffix);
if (!VFS.exists(LibDir))
continue;
// Maybe filter out <libdir>/gcc and <libdir>/gcc-cross.
Expand Down Expand Up @@ -2023,7 +2023,7 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes(
// so we need to find those /usr/gcc/*/lib/gcc libdirs and go with
// /usr/gcc/<version> as a prefix.

std::string PrefixDir = SysRoot.str() + "/usr/gcc";
std::string PrefixDir = concat(SysRoot, "/usr/gcc");
std::error_code EC;
for (llvm::vfs::directory_iterator LI = D.getVFS().dir_begin(PrefixDir, EC),
LE;
Expand Down Expand Up @@ -2058,7 +2058,7 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes(
Prefixes.push_back("/opt/rh/devtoolset-3/root/usr");
Prefixes.push_back("/opt/rh/devtoolset-2/root/usr");
}
Prefixes.push_back(SysRoot.str() + "/usr");
Prefixes.push_back(concat(SysRoot, "/usr"));
}

/*static*/ void Generic_GCC::GCCInstallationDetector::CollectLibDirsAndTriples(
Expand Down Expand Up @@ -2571,7 +2571,7 @@ bool Generic_GCC::GCCInstallationDetector::ScanGentooConfigs(
const llvm::Triple &TargetTriple, const ArgList &Args,
const SmallVectorImpl<StringRef> &CandidateTriples,
const SmallVectorImpl<StringRef> &CandidateBiarchTriples) {
if (!D.getVFS().exists(D.SysRoot + GentooConfigDir))
if (!D.getVFS().exists(concat(D.SysRoot, GentooConfigDir)))
return false;

for (StringRef CandidateTriple : CandidateTriples) {
Expand All @@ -2590,8 +2590,8 @@ bool Generic_GCC::GCCInstallationDetector::ScanGentooGccConfig(
const llvm::Triple &TargetTriple, const ArgList &Args,
StringRef CandidateTriple, bool NeedsBiarchSuffix) {
llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> File =
D.getVFS().getBufferForFile(D.SysRoot + GentooConfigDir + "/config-" +
CandidateTriple.str());
D.getVFS().getBufferForFile(concat(D.SysRoot, GentooConfigDir,
"/config-" + CandidateTriple.str()));
if (File) {
SmallVector<StringRef, 2> Lines;
File.get()->getBuffer().split(Lines, "\n");
Expand All @@ -2602,8 +2602,8 @@ bool Generic_GCC::GCCInstallationDetector::ScanGentooGccConfig(
continue;
// Process the config file pointed to by CURRENT.
llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> ConfigFile =
D.getVFS().getBufferForFile(D.SysRoot + GentooConfigDir + "/" +
Line.str());
D.getVFS().getBufferForFile(
concat(D.SysRoot, GentooConfigDir, "/" + Line));
std::pair<StringRef, StringRef> ActiveVersion = Line.rsplit('-');
// List of paths to scan for libraries.
SmallVector<StringRef, 4> GentooScanPaths;
Expand Down Expand Up @@ -2636,7 +2636,7 @@ bool Generic_GCC::GCCInstallationDetector::ScanGentooGccConfig(

// Scan all paths for GCC libraries.
for (const auto &GentooScanPath : GentooScanPaths) {
std::string GentooPath = D.SysRoot + std::string(GentooScanPath);
std::string GentooPath = concat(D.SysRoot, GentooScanPath);
if (D.getVFS().exists(GentooPath + "/crtbegin.o")) {
if (!ScanGCCForMultilibs(TargetTriple, Args, GentooPath,
NeedsBiarchSuffix))
Expand Down Expand Up @@ -2922,9 +2922,9 @@ Generic_GCC::addLibCxxIncludePaths(const llvm::opt::ArgList &DriverArgs,
// If this is a development, non-installed, clang, libcxx will
// not be found at ../include/c++ but it likely to be found at
// one of the following two locations:
if (AddIncludePath(SysRoot + "/usr/local/include"))
if (AddIncludePath(concat(SysRoot, "/usr/local/include")))
return;
if (AddIncludePath(SysRoot + "/usr/include"))
if (AddIncludePath(concat(SysRoot, "/usr/include")))
return;
}

Expand Down
45 changes: 23 additions & 22 deletions clang/lib/Driver/ToolChains/Linux.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,9 @@ std::string Linux::getMultiarchTriple(const Driver &D,
case llvm::Triple::mips64: {
std::string MT = std::string(IsMipsR6 ? "mipsisa64r6" : "mips64") +
"-linux-" + (IsMipsN32Abi ? "gnuabin32" : "gnuabi64");
if (D.getVFS().exists(SysRoot + "/lib/" + MT))
if (D.getVFS().exists(concat(SysRoot, "/lib", MT)))
return MT;
if (D.getVFS().exists(SysRoot + "/lib/mips64-linux-gnu"))
if (D.getVFS().exists(concat(SysRoot, "/lib/mips64-linux-gnu")))
return "mips64-linux-gnu";
break;
}
Expand All @@ -108,14 +108,14 @@ std::string Linux::getMultiarchTriple(const Driver &D,
return "mips64el-linux-android";
std::string MT = std::string(IsMipsR6 ? "mipsisa64r6el" : "mips64el") +
"-linux-" + (IsMipsN32Abi ? "gnuabin32" : "gnuabi64");
if (D.getVFS().exists(SysRoot + "/lib/" + MT))
if (D.getVFS().exists(concat(SysRoot, "/lib", MT)))
return MT;
if (D.getVFS().exists(SysRoot + "/lib/mips64el-linux-gnu"))
if (D.getVFS().exists(concat(SysRoot, "/lib/mips64el-linux-gnu")))
return "mips64el-linux-gnu";
break;
}
case llvm::Triple::ppc:
if (D.getVFS().exists(SysRoot + "/lib/powerpc-linux-gnuspe"))
if (D.getVFS().exists(concat(SysRoot, "/lib/powerpc-linux-gnuspe")))
return "powerpc-linux-gnuspe";
return "powerpc-linux-gnu";
case llvm::Triple::ppcle:
Expand Down Expand Up @@ -263,8 +263,8 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)

Generic_GCC::AddMultilibPaths(D, SysRoot, OSLibDir, MultiarchTriple, Paths);

addPathIfExists(D, SysRoot + "/lib/" + MultiarchTriple, Paths);
addPathIfExists(D, SysRoot + "/lib/../" + OSLibDir, Paths);
addPathIfExists(D, concat(SysRoot, "/lib", MultiarchTriple), Paths);
addPathIfExists(D, concat(SysRoot, "/lib/..", OSLibDir), Paths);

if (IsAndroid) {
// Android sysroots contain a library directory for each supported OS
Expand All @@ -275,24 +275,24 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
unsigned Micro;
Triple.getEnvironmentVersion(Major, Minor, Micro);
addPathIfExists(D,
SysRoot + "/usr/lib/" + MultiarchTriple + "/" +
llvm::to_string(Major),
concat(SysRoot, "/usr/lib", MultiarchTriple,
llvm::to_string(Major)),
Paths);
}

addPathIfExists(D, SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
addPathIfExists(D, concat(SysRoot, "/usr/lib", MultiarchTriple), Paths);
// 64-bit OpenEmbedded sysroots may not have a /usr/lib dir. So they cannot
// find /usr/lib64 as it is referenced as /usr/lib/../lib64. So we handle
// this here.
if (Triple.getVendor() == llvm::Triple::OpenEmbedded &&
Triple.isArch64Bit())
addPathIfExists(D, SysRoot + "/usr/" + OSLibDir, Paths);
addPathIfExists(D, concat(SysRoot, "/usr", OSLibDir), Paths);
else
addPathIfExists(D, SysRoot + "/usr/lib/../" + OSLibDir, Paths);
addPathIfExists(D, concat(SysRoot, "/usr/lib/..", OSLibDir), Paths);
if (IsRISCV) {
StringRef ABIName = tools::riscv::getRISCVABI(Args, Triple);
addPathIfExists(D, SysRoot + "/" + OSLibDir + "/" + ABIName, Paths);
addPathIfExists(D, SysRoot + "/usr/" + OSLibDir + "/" + ABIName, Paths);
addPathIfExists(D, concat(SysRoot, "/", OSLibDir, ABIName), Paths);
addPathIfExists(D, concat(SysRoot, "/usr", OSLibDir, ABIName), Paths);
}

Generic_GCC::AddMultiarchPaths(D, SysRoot, OSLibDir, Paths);
Expand All @@ -310,8 +310,8 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
addPathIfExists(D, D.Dir + "/../" + OSLibDir, Paths);
}

addPathIfExists(D, SysRoot + "/lib", Paths);
addPathIfExists(D, SysRoot + "/usr/lib", Paths);
addPathIfExists(D, concat(SysRoot, "/lib"), Paths);
addPathIfExists(D, concat(SysRoot, "/usr/lib"), Paths);
}

ToolChain::RuntimeLibType Linux::GetDefaultRuntimeLibType() const {
Expand Down Expand Up @@ -555,7 +555,7 @@ void Linux::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
return;

// LOCAL_INCLUDE_DIR
addSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/local/include");
addSystemInclude(DriverArgs, CC1Args, concat(SysRoot, "/usr/local/include"));
// TOOL_INCLUDE_DIR
AddMultilibIncludeArgs(DriverArgs, CC1Args);

Expand All @@ -576,19 +576,20 @@ void Linux::AddClangSystemIncludeArgs(const ArgList &DriverArgs,
// /usr/include.
std::string MultiarchIncludeDir = getMultiarchTriple(D, getTriple(), SysRoot);
if (!MultiarchIncludeDir.empty() &&
D.getVFS().exists(SysRoot + "/usr/include/" + MultiarchIncludeDir))
addExternCSystemInclude(DriverArgs, CC1Args,
SysRoot + "/usr/include/" + MultiarchIncludeDir);
D.getVFS().exists(concat(SysRoot, "/usr/include", MultiarchIncludeDir)))
addExternCSystemInclude(
DriverArgs, CC1Args,
concat(SysRoot, "/usr/include", MultiarchIncludeDir));

if (getTriple().getOS() == llvm::Triple::RTEMS)
return;

// Add an include of '/include' directly. This isn't provided by default by
// system GCCs, but is often used with cross-compiling GCCs, and harmless to
// add even when Clang is acting as-if it were a system compiler.
addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/include");
addExternCSystemInclude(DriverArgs, CC1Args, concat(SysRoot, "/include"));

addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/include");
addExternCSystemInclude(DriverArgs, CC1Args, concat(SysRoot, "/usr/include"));

if (!DriverArgs.hasArg(options::OPT_nobuiltininc) && getTriple().isMusl())
addSystemInclude(DriverArgs, CC1Args, ResourceDirInclude);
Expand Down
27 changes: 26 additions & 1 deletion clang/lib/Sema/SemaAPINotes.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#include "clang/Sema/SemaInternal.h"
#include "clang/AST/DeclObjC.h"
#include "clang/APINotes/APINotesReader.h"
#include "clang/Lex/Lexer.h"
using namespace clang;

namespace {
Expand Down Expand Up @@ -856,8 +857,32 @@ void Sema::ProcessAPINotes(Decl *D) {

// Tags
if (auto Tag = dyn_cast<TagDecl>(D)) {
std::string LookupName = Tag->getName().str();

// Use the source location to discern if this Tag is an OPTIONS macro.
// For now we would like to limit this trick of looking up the APINote tag
// using the EnumDecl's QualType in the case where the enum is anonymous.
// This is only being used to support APINotes lookup for C++ NS/CF_OPTIONS
// when C++-Interop is enabled.
std::string MacroName =
LookupName.empty() && Tag->getOuterLocStart().isMacroID()
? clang::Lexer::getImmediateMacroName(
Tag->getOuterLocStart(),
Tag->getASTContext().getSourceManager(), LangOpts)
.str()
: "";

if (LookupName.empty() && isa<clang::EnumDecl>(Tag) &&
(MacroName == "CF_OPTIONS" || MacroName == "NS_OPTIONS" ||
MacroName == "OBJC_OPTIONS" || MacroName == "SWIFT_OPTIONS")) {

clang::QualType T = llvm::cast<clang::EnumDecl>(Tag)->getIntegerType();
LookupName = clang::QualType::getAsString(
T.split(), getASTContext().getPrintingPolicy());
}

for (auto Reader : APINotes.findAPINotes(D->getLocation())) {
auto Info = Reader->lookupTag(Tag->getName());
auto Info = Reader->lookupTag(LookupName);
ProcessVersionedAPINotes(*this, Tag, Info);
}

Expand Down
5 changes: 3 additions & 2 deletions clang/lib/Sema/SemaLookup.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1911,13 +1911,14 @@ NamedDecl *LookupResult::getAcceptableDeclSlow(NamedDecl *D) const {
/// used to diagnose ambiguities.
///
/// @returns \c true if lookup succeeded and false otherwise.
bool Sema::LookupName(LookupResult &R, Scope *S, bool AllowBuiltinCreation) {
bool Sema::LookupName(LookupResult &R, Scope *S, bool AllowBuiltinCreation,
bool ForceNoCPlusPlus) {
DeclarationName Name = R.getLookupName();
if (!Name) return false;

LookupNameKind NameKind = R.getLookupKind();

if (!getLangOpts().CPlusPlus) {
if (!getLangOpts().CPlusPlus || ForceNoCPlusPlus) {
// Unqualified name lookup in C/Objective-C is purely lexical, so
// search in the declarations attached to the name.
if (NameKind == Sema::LookupRedeclarationWithLinkage) {
Expand Down
3 changes: 3 additions & 0 deletions clang/lib/Sema/SemaTemplateInstantiate.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1943,6 +1943,9 @@ TemplateInstantiator::TransformExprRequirement(concepts::ExprRequirement *Req) {
if (ExprInst.isInvalid())
return nullptr;
ExprResult TransExprRes = TransformExpr(E);
if (!TransExprRes.isInvalid() && !Trap.hasErrorOccurred() &&
TransExprRes.get()->hasPlaceholderType())
TransExprRes = SemaRef.CheckPlaceholderExpr(TransExprRes.get());
if (TransExprRes.isInvalid() || Trap.hasErrorOccurred())
TransExpr = createSubstDiag(SemaRef, Info, [&](llvm::raw_ostream &OS) {
E->printPretty(OS, nullptr, SemaRef.getPrintingPolicy());
Expand Down
2 changes: 2 additions & 0 deletions clang/lib/Sema/TreeTransform.h
Original file line number Diff line number Diff line change
Expand Up @@ -12392,6 +12392,8 @@ TreeTransform<Derived>::TransformExprRequirement(concepts::ExprRequirement *Req)
TransExpr = Req->getExprSubstitutionDiagnostic();
else {
ExprResult TransExprRes = getDerived().TransformExpr(Req->getExpr());
if (TransExprRes.isUsable() && TransExprRes.get()->hasPlaceholderType())
TransExprRes = SemaRef.CheckPlaceholderExpr(TransExprRes.get());
if (TransExprRes.isInvalid())
return nullptr;
TransExpr = TransExprRes.get();
Expand Down
Loading