Go to file
Jin-Gu Kang b7538c71e1 Add comment as following:
load and store reference same memory location, the memory location
is represented by getelementptr with two uses (load and store) and
the getelementptr's base is alloca with single use. At this point,
instructions from alloca to store can be removed.
(this pattern is generated when bitfield is accessed.)
For example,
%u = alloca %struct.test, align 4               ; [#uses=1]
%0 = getelementptr inbounds %struct.test* %u, i32 0, i32 0;[#uses=2]
%1 = load i8* %0, align 4                       ; [#uses=1]
%2 = and i8 %1, -16                             ; [#uses=1]
%3 = or i8 %2, 5                                ; [#uses=1]
store i8 %3, i8* %0, align 4

llvm-svn: 127565
2011-03-13 14:05:51 +00:00
clang Reverting "Build libclang as a static library too." 2011-03-13 04:28:29 +00:00
compiler-rt don't compile modsi3 into an infinite loop, patch by Matt Johnson! 2011-03-10 22:11:46 +00:00
debuginfo-tests test case for r125249. 2011-02-10 00:41:14 +00:00
libcxx <rdar://problem/9073695> std::uncaught_exception() becomes true before evaluating the throw-expression rather than after 2011-03-11 22:33:07 +00:00
lldb Turn labels into actual switch cases. 2011-03-13 00:14:32 +00:00
llvm Add comment as following: 2011-03-13 14:05:51 +00:00