Commit Graph

23 Commits

Author SHA1 Message Date
Erik Eckstein
39bb14b094 change mangling prefix from $S to $s
This is the final ABI mangling prefix

rdar://problem/38471478
2018-09-19 13:55:11 -07:00
Adrian Prantl
9cb0b8ef25 Zero-initialize -Onone debug shadow copies for exploded values
and simplify the initialization code by emitting a memset intrinsic.

rdar://problem/43566087
2018-09-14 17:20:11 -07:00
Davide Italiano
5cc65ecc07 [DebugInfo] Only run this test when the shadow copy is happening.
The optimizations kick in only on some architectures, and
elsewhere this particular sequence is not emitted.

<rdar://problem/41439607>
2018-06-28 09:54:34 -07:00
Davide Italiano
38166e9f80 [DebugInfo] Relax the output of this test.
The actual types aren't particularly relevant and might
change between 32-bits and 64-bits platforms.

<rdar://problem/39874758>
2018-05-01 17:22:42 -07:00
Davide Italiano
9f341886e7 [DebugInfo] Improve check lines in a test.
Addresses Vedant's post commit review. Make sure we store a
value to the shadow SSA copy we create.
2018-01-25 07:46:50 -08:00
Davide Italiano
fa10866c38 [IRGenSIL] When emitting a shadow copy, honour the layout.
This code was ad-hoc trying to reconstruct the layout. Ask TypeInfo
instead, as it knows what's the right thing to do.
This allows to print field of classes nested inside classes correctly
in lldb (SR-6791).

<rdar://problem/36518505>
2018-01-24 13:20:26 -08:00
Erik Eckstein
cd3d50a5d9 ABI: Change the mangling prefix from _T0 to $S 2018-01-06 13:55:59 -08:00
Pavel Yaskevich
600b15821d [Mangling/ABI] NFC: Fix DebugInfo tests to reflect label mangling changes 2017-12-18 15:44:24 -08:00
Adrian Prantl
b5c68bcf1e Disable test on i386 because of the large-types optimization.
rdar://problem/33761763
2017-08-09 15:22:04 -07:00
Joe Shajrawi
84994dc786 Enable large loadable types by default 2017-08-03 11:45:28 -07:00
Adrian Prantl
84d9238315 Emit llvm.dbg.declare intrisics immediately after the described alloca.
This cleanup change doesn't change the semantics, but it makes the
resulting IR much easier to read and debug.
2017-05-24 09:13:41 -07:00
Adrian Prantl
05ada87d46 Emit the code to setup debug shadow copies of variables in the same scope
as the variable is in. If ASAN inserts additional basic blocks to sanitize
the store, it will reuse the location and scope. If the scope is not a
descendant of the scope of the variable an optimization in the live debug
values pass will kill all DEBUG_VALUEs and thus prevent them from being
propagated.

rdar://problem/30433661
2017-05-23 17:11:03 -07:00
Adrian Prantl
0b2b0c036c Revert "Emit llvm.dbg.declare intrisics immediately after the described alloca."
This reverts commit 8660fd489a.
2017-05-23 11:42:13 -07:00
Adrian Prantl
8660fd489a Emit llvm.dbg.declare intrisics immediately after the described alloca.
This cleanup change doesn't change the semantics, but it makes the
resulting IR much easier to read and debug.
2017-05-23 09:23:41 -07:00
Joe Shajrawi
17effee303 Disable large types irgen pass 2017-05-09 18:58:27 -07:00
Joe Shajrawi
4dc0801785 IRGen Mandatory Module Pass: Pass large loadable types by address instead of by value 2017-05-01 12:04:06 -07:00
Erik Eckstein
c4a11f4c92 tests: remove the now unused option -new-mangling-for-tests 2017-03-22 11:28:43 -07:00
Erik Eckstein
1d3724666f tests: convert about 400 tests to the new mangling by using the -new-mangling-for-tests option
When the new mangling is enabled permanently, the option can be removed from the RUN command lines again.
2017-01-24 15:27:45 -08:00
Dmitri Gribenko
d175b3b66d Migrate FileCheck to %FileCheck in tests 2016-08-10 23:52:02 -07:00
Adrian Prantl
4136f07072 Debug Info: Use artificial locations for emitting aggregate shadow copies.
<rdar://problem/25427596>
2016-07-29 15:10:27 -07:00
Adrian Prantl
ebc47e40be Shadow copies: Use the function's debug scope for the artificial location
instead of the variable's potentially incorrectly not inlined scope.

rdar://problem/27206870
2016-07-06 18:50:30 -07:00
Robert Widmann
6249dfc9c8 Use the exact bitwidth integer for this test.
Fixes a regression in the test suite introduced in #3347 on 32-bit
architectures.
2016-07-06 02:09:02 -07:00
Adrian Prantl
674d2e79ec Switch to an artificial debug location before emitting a shadow copy store.
This prevents (among other things) an unexpected step to the end of the
scope while initializing a guard variable.

<rdar://problem/25427596>
2016-07-05 11:47:56 -07:00