Bjorn Pettersson
0ac3f0a4d9
Re-apply "[DebugInfo] Check size of variable in ConvertDebugDeclareToDebugValue"
...
This is r334704 (which was reverted in r334732) with a fix for
types like x86_fp80. We need to use getTypeAllocSizeInBits and
not getTypeStoreSizeInBits to avoid dropping debug info for
such types.
Original commit msg:
> Summary:
> Do not convert a DbgDeclare to DbgValue if the store
> instruction only refer to a fragment of the variable
> described by the DbgDeclare.
>
> Problem was seen when for example having an alloca for an
> array or struct, and there were stores to individual elements.
> In the past we inserted a DbgValue intrinsics for each store,
> just as if the store wrote the whole variable.
>
> When handling store instructions we insert a DbgValue that
> indicates that the variable is "undefined", as we do not know
> which part of the variable that is updated by the store.
>
> When ConvertDebugDeclareToDebugValue is used with a load/phi
> instruction we assert that the referenced value is large enough
> to cover the whole variable. Afaict this should be true for all
> scenarios where those methods are used on trunk. If the assert
> blows in the future I guess we could simply skip to insert a
> dbg.value instruction.
>
> In the future I think we should examine which part of the variable
> that is accessed, and add a DbgValue instrinsic with an appropriate
> DW_OP_LLVM_fragment expression.
>
> Reviewers: dblaikie, aprantl, rnk
>
> Reviewed By: aprantl
>
> Subscribers: JDevlieghere, llvm-commits
>
> Tags: #debug-info
>
> Differential Revision: https://reviews.llvm.org/D48024
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334830 91177308-0d34-0410-b5e6-96231b3b80d8
2018-06-15 13:48:55 +00:00
..
2017-09-12 21:50:55 +00:00
2017-09-11 23:05:20 +00:00
2017-09-11 22:59:45 +00:00
2018-03-21 21:31:25 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2015-06-25 21:57:33 +00:00
2017-09-11 22:59:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-24 23:00:21 +00:00
2017-09-11 23:05:20 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-12 21:50:55 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2014-09-06 19:57:48 +00:00
2016-04-15 15:57:41 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-01-16 11:17:57 +00:00
2018-05-29 14:35:34 +00:00
2017-09-11 23:05:20 +00:00
2018-03-29 17:16:41 +00:00
2017-07-28 20:21:02 +00:00
2017-09-11 22:59:45 +00:00
2016-12-16 23:54:33 +00:00
2017-08-30 18:06:51 +00:00
2018-05-09 02:40:45 +00:00
2018-01-31 22:04:26 +00:00
2018-01-31 22:04:26 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-07-28 20:21:02 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2016-04-15 15:57:41 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-21 19:48:27 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-21 19:36:54 +00:00
2018-02-23 23:01:06 +00:00
2018-04-20 10:44:42 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-10-10 14:15:25 +00:00
2017-07-28 20:21:02 +00:00
2017-09-11 22:59:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-06-01 05:31:58 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-10 10:51:33 +00:00
2018-01-16 11:17:57 +00:00
2018-03-29 13:47:57 +00:00
2018-02-23 23:01:06 +00:00
2018-05-22 17:27:31 +00:00
2018-02-23 23:01:06 +00:00
2018-04-20 15:29:47 +00:00
2018-02-23 23:01:06 +00:00
2018-01-16 11:17:57 +00:00
2018-01-16 11:17:57 +00:00
2018-01-16 11:17:57 +00:00
2018-05-18 20:12:54 +00:00
2017-12-21 19:38:13 +00:00
2017-12-09 00:39:53 +00:00
2017-12-09 00:39:53 +00:00
2018-05-10 20:02:34 +00:00
2018-05-10 20:02:34 +00:00
2017-12-09 00:39:53 +00:00
2018-05-10 20:02:34 +00:00
2018-05-10 20:02:34 +00:00
2018-05-10 20:02:34 +00:00
2017-07-28 20:21:02 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-10-10 14:15:25 +00:00
2017-12-04 21:27:46 +00:00
2017-09-11 22:59:45 +00:00
2018-02-12 16:10:09 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2017-10-10 14:15:25 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-01-29 12:37:30 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-04 16:10:43 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2017-09-12 21:50:41 +00:00
2018-05-09 02:40:45 +00:00
2017-09-12 23:40:19 +00:00
2017-09-12 21:50:41 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2015-01-29 20:21:24 +00:00
2017-09-11 23:05:20 +00:00
2014-06-09 22:42:55 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-06-15 13:48:55 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-08-30 18:06:51 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-03-20 16:04:40 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-04-10 14:23:41 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 22:59:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2016-04-15 15:57:41 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-10-10 14:15:25 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-03-23 13:35:54 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-03-24 19:11:31 +00:00
2018-01-16 11:17:57 +00:00
2017-09-11 23:05:20 +00:00
2018-05-09 02:40:45 +00:00
2016-04-15 15:57:41 +00:00
2018-05-10 20:02:34 +00:00
2018-05-10 20:02:34 +00:00
2017-08-30 18:06:51 +00:00
2018-03-01 21:53:17 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2017-07-28 20:21:02 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 23:05:20 +00:00
2017-06-14 13:14:38 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2017-09-11 22:59:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00
2018-05-09 02:40:45 +00:00