Bug ID 38076
Summary lldb and gdb compute different values for expressions
Product lldb
Version unspecified
Hardware PC
OS Linux
Status NEW
Severity enhancement
Priority P
Component All Bugs
Assignee lldb-dev@lists.llvm.org
Reporter tianxiao.gu@gmail.com
CC chengniansun@gmail.com, davide@freebsd.org, llvm-bugs@lists.llvm.org, su@cs.ucdavis.edu
Created attachment 20530 [details]
reproducing scripts
See attached zip file to reproduce the inconsistency.
Affected version:
lldb version 7.0.0 ([http://llvm.org/svn/llvm-project/lldb/trunk](http://llvm.org/svn/llvm-project/lldb/trunk) revision
336302)
clang revision 336302
llvm revision 336302
~~~test.c
typedef unsigned int uint32_t;
struct S0 {
signed f2;
};
static g_463 = 0x1561983AL;
void func_1(void)
{
struct S0 l_19;
l_19.f2 = 419;
uint32_t l_4037 = 4294967295UL;
l_19.f2 = g_463; // break here and evaluate ((l_4037 % (-(g_463))) | l_19.f2)
}
int main()
{
func_1();
return 0;
}