- Dec 20, 2008
-
-
Sebastian Redl authored
llvm-svn: 61275
-
Zhongxing Xu authored
* Now Bind() methods take and return GRState* because binding could also alter GDM. * No variables are initialized except those declared with initial values. * failed C test cases are due to bugs in RemoveDeadBindings(), which removes constraints that is still alive. This will be fixed in later patch. * default value of array and struct regions will be implemented in later patch. llvm-svn: 61274
-
Ted Kremenek authored
llvm-svn: 61273
-
rdar://problem/6454568Ted Kremenek authored
Fix <rdar://problem/6454568>: BugReporter should correctly handle switch statements with no default case. llvm-svn: 61270
-
Chris Lattner authored
llvm-svn: 61269
-
Fariborz Jahanian authored
@encode of classes and bitfields. llvm-svn: 61268
-
- Dec 19, 2008
-
-
Bill Wendling authored
llvm-svn: 61265
-
Bill Wendling authored
llvm-svn: 61264
-
Dan Gohman authored
warnings on compilers that warn about such things. llvm-svn: 61263
-
Anders Carlsson authored
llvm-svn: 61260
-
Evan Cheng authored
Fix PR3149. If an early clobber def is a physical register and it is tied to an input operand, it effectively extends the live range of the physical register. Currently we do not have a good way to represent this. 172 %ECX<def> = MOV32rr %reg1039<kill> 180 INLINEASM <es:subl $5,$1 sbbl $3,$0>, 10, %EAX<def>, 14, %ECX<earlyclobber,def>, 9, %EAX<kill>, 36, <fi#0>, 1, %reg0, 0, 9, %ECX<kill>, 36, <fi#1>, 1, %reg0, 0 188 %EAX<def> = MOV32rr %EAX<kill> 196 %ECX<def> = MOV32rr %ECX<kill> 204 %ECX<def> = MOV32rr %ECX<kill> 212 %EAX<def> = MOV32rr %EAX<kill> 220 %EAX<def> = MOV32rr %EAX 228 %reg1039<def> = MOV32rr %ECX<kill> The early clobber operand ties ECX input to the ECX def. The live interval of ECX is represented as this: %reg20,inf = [46,47:1)[174,230:0) 0@174-(230) 1@46-(47) The right way to represent this is something like %reg20,inf = [46,47:2)[174,182:1)[181:230:0) 0@174-(182) 1@181-230 @2@46-(47) Of course that won't work since that means overlapping live ranges defined by two val#. The workaround for now is to add a bit to val# which says the val# is redefined by a early clobber def somewhere. This prevents the move at 228 from being optimized away by SimpleRegisterCoalescing::AdjustCopiesBackFrom. llvm-svn: 61259
-
Anders Carlsson authored
llvm-svn: 61258
-
John Criswell authored
version number assertions. llvm-svn: 61257
-
Douglas Gregor authored
llvm-svn: 61256
-
-
Bill Wendling authored
llvm-svn: 61254
-
Gordon Henriksen authored
llvm-svn: 61253
-
Gordon Henriksen authored
This operation can be used to build dyn_cast, isa, and cast. llvm-svn: 61252
-
Chris Lattner authored
Patch by Lukasz Janyst! llvm-svn: 61251
-
Dan Gohman authored
that have i32 immediates so that they get selected first. This currently only matters in the JIT, as assemblers will automatically use the smallest encoding. llvm-svn: 61250
-
Dan Gohman authored
reduces the amount of code slightly when assertions are enabled. llvm-svn: 61249
-
Evan Cheng authored
- CodeGenPrepare does not split loop back edges but it only knows about back edges of single block loops. It now does a DFS walk to find loop back edges. - Use SplitBlockPredecessors to factor out common predecessors of the critical edge destination. This is disabled for now due to some regressions. llvm-svn: 61248
-
Fariborz Jahanian authored
llvm-svn: 61247
-
Douglas Gregor authored
warning. This matches GCC's behavior and addresses <rdar://problem/6458293>. llvm-svn: 61246
-
Anders Carlsson authored
llvm-svn: 61245
-
Chris Lattner authored
llvm-svn: 61244
-
Rafael Espindola authored
The EH_frame and .eh symbols are now private, except for darwin9 and earlier. The patch also fixes the definition of PrivateGlobalPrefix on pcc linux. llvm-svn: 61242
-
Nick Lewycky authored
llvm-svn: 61241
-
Nick Lewycky authored
llvm-svn: 61240
-
Nick Lewycky authored
The problematic part of this patch is that we were out of attribute bits, requiring some fancy bit hacking to make it fit (by shrinking alignment) without breaking existing users or the file format. This change will require users to rebuild llvm-gcc to match llvm. llvm-svn: 61239
-
Bill Wendling authored
llvm-svn: 61238
-
Dan Gohman authored
data from a previous block. llvm-svn: 61237
-
Dan Gohman authored
one instruction. llvm-svn: 61236
-
Dan Gohman authored
argument. Nothing was using it, and it set the MBB member without calling enterBasicBlock, which was problematic. llvm-svn: 61234
-
Ted Kremenek authored
llvm-svn: 61233
-
Fariborz Jahanian authored
llvm-svn: 61231
-
Ted Kremenek authored
llvm-svn: 61230
-
Douglas Gregor authored
llvm-svn: 61229
-
Mon P Wang authored
of incorrectly generating pmuldq llvm-svn: 61228
-
Ted Kremenek authored
Added test case for suppressing leak warnings for reference-counted objects passed by-reference to an unknown function. llvm-svn: 61227
-