Go to file
Adrian Prantl 32da88923a This reapplies r207235 with an additional bugfixes caught by the msan
buildbot - do not insert debug intrinsics before phi nodes.

Debug info for optimized code: Support variables that are on the stack and
described by DBG_VALUEs during their lifetime.

Previously, when a variable was at a FrameIndex for any part of its
lifetime, this would shadow all other DBG_VALUEs and only a single
fbreg location would be emitted, which in fact is only valid for a small
range and not the entire lexical scope of the variable. The included
dbg-value-const-byref testcase demonstrates this.

This patch fixes this by
Local
- emitting dbg.value intrinsics for allocas that are passed by reference
- dropping all dbg.declares (they are now fully lowered to dbg.values)
SelectionDAG
- renamed constructors for SDDbgValue for better readability.
- fix UserValue::match() to handle indirect values correctly
- not inserting an MMI table entries for dbg.values that describe allocas.
- lowering dbg.values that describe allocas into *indirect* DBG_VALUEs.
CodeGenPrepare
- leaving dbg.values for an alloca were they are (see comment)
Other
- regenerated/updated instcombine.ll testcase and included source

rdar://problem/16679879
http://reviews.llvm.org/D3374

llvm-svn: 207269
2014-04-25 20:49:25 +00:00
clang Make test pass on 32 bit architectures. 2014-04-25 20:49:10 +00:00
clang-tools-extra Remove unnecessary explicit unique_ptr ctors now that buildASTFromCode returns a unique_ptr instead of a raw pointer. 2014-04-25 17:03:20 +00:00
compiler-rt [sanitizer] Limit fopen interceptor to linux. 2014-04-25 13:55:29 +00:00
debuginfo-tests relax testcase for LLDB output format compatibility. 2014-03-19 23:06:18 +00:00
libclc Introduce M_LOG2E_F and M_LOG2E 2014-03-28 21:19:03 +00:00
libcxx Added some tests for equal elements in min_element and max_element. Bug #19547 was invalid, but we weren't testing that case 2014-04-25 15:50:54 +00:00
libcxxabi Properly sign extend delta in compact unwind info 2014-04-25 01:39:06 +00:00
lld [PECOFF] Add /IMPLIB command line option. 2014-04-25 03:35:13 +00:00
lldb Attempt to fix the build 2014-04-25 09:49:32 +00:00
llvm This reapplies r207235 with an additional bugfixes caught by the msan 2014-04-25 20:49:25 +00:00
openmp Add the offload directory which contains the code needed to support 2014-04-09 15:40:23 +00:00
polly www: Reference phone call notes 2014-04-23 18:09:24 +00:00