- Jul 30, 2008
-
-
Ted Kremenek authored
llvm-svn: 54222
-
Ted Kremenek authored
llvm-svn: 54220
-
Ted Kremenek authored
llvm-svn: 54219
-
Owen Anderson authored
llvm-svn: 54218
-
Bruno Cardoso Lopes authored
llvm-svn: 54215
-
Bruno Cardoso Lopes authored
llvm-svn: 54214
-
Bruno Cardoso Lopes authored
llvm-svn: 54213
-
Bruno Cardoso Lopes authored
llvm-svn: 54212
-
Daniel Dunbar authored
instead of mapping the decl to a bitcast of the global to the correct type. - GetAddrOf{Function,GlobalVar} introduce the bitcast on every use now. - This solves a problem where a dangling pointer could be introduced by the RAUW done when replacing a forward or tentative definition. See testcase for more details. - Fixes <rdar://problem/6108358> llvm-svn: 54211
-
Matthijs Kooijman authored
llvm-svn: 54210
-
Matthijs Kooijman authored
llvm-svn: 54209
-
Mon P Wang authored
to different address spaces. This alters the naming scheme for those intrinsics, e.g., atomic.load.add.i32 => atomic.load.add.i32.p0i32 llvm-svn: 54195
-
Eli Friedman authored
time applying to the implicit comparison in smin expressions. The correct way to transform an inequality into the opposite inequality, either signed or unsigned, is with a not expression. I looked through the SCEV code, and I don't think there are any more occurrences of this issue. llvm-svn: 54194
-
Owen Anderson authored
llvm-svn: 54186
-
Owen Anderson authored
When merging live intervals, we also need to merge in any live ranges that are inputs to two-address instructions that themselves define a range we already care about. llvm-svn: 54185
-
Eli Friedman authored
SGT exit condition. Essentially, the correct way to flip an inequality in 2's complement is the not operator, not the negation operator. That said, the difference only affects cases involving INT_MIN. Also, enhance the pre-test search logic to be a bit smarter about inequalities flipped with a not operator, so it can eliminate the smax from the iteration count for simple loops. llvm-svn: 54184
-
Ted Kremenek authored
llvm-svn: 54181
-
Daniel Dunbar authored
- No (intended) functionality change. - Primary purpose is to clearly separate (lazy) construction of globals that are a forward declaration or tentative definition from those that are the final definition. - Lazy construction is now encapsulated in GetAddrOf{Function,GlobalVar} while final definitions are constructed in EmitGlobal{Function,Var}Definition. - External interface for dealing with globals is now limited to EmitGlobal and GetAddrOf{Function,GlobalVar}. - Also updated helper functions dealing with statics, annotations, and ctors to be private. llvm-svn: 54179
-
- Jul 29, 2008
-
-
Owen Anderson authored
When merging a PHI operand's live interval into the PHI's live interval, we need to merge over all liveranges in the operand's interval that share the relevant value number, not just the range that immediately precedes the PHI. llvm-svn: 54174
-
Owen Anderson authored
llvm-svn: 54173
-
Duncan Sands authored
to be marked invalid regardless of whether it is a debug, an exception handling or (hopefully) a GC label. llvm-svn: 54172
-
Bruno Cardoso Lopes authored
llvm-svn: 54169
-
Nate Begeman authored
llvm-svn: 54168
-
Bruno Cardoso Lopes authored
llvm-svn: 54167
-
Duncan Sands authored
be run when installing on sparc sun. Set the mime type to text/x-sh while there. llvm-svn: 54165
-
Nate Begeman authored
The CellSPU codegen is broken, but needs to be fixed before we can put this back in. llvm-svn: 54164
-
Steve Naroff authored
<rdar://problem/6108127> clang ObjC rewriter: no translation of id <proto> llvm-svn: 54163
-
Daniel Dunbar authored
- Killed useless CodeGenModule::EmitGlobalVarDeclarator, instead just recurse on any ScopedDecl. - Fix for <rdar://problem/6093838> llvm-svn: 54162
-
Nate Begeman authored
CodeGen & Clang work coming next. llvm-svn: 54161
-
Matthijs Kooijman authored
partially unroll a loop when fully unrolling would not fit under the threshold. Patch by Mikael Lepistö. llvm-svn: 54160
-
Matthijs Kooijman authored
that says "unconditional loads from this argument are safe", we now keep track of the safety per set of indices from which loads happen. This prevents ArgPromotion from promoting loads that aren't really valid. As an added effect, this will now disregard the the type of the indices passed to a GEP, so "load GEP %A, i32 1" and "load GEP %A, i64 1" will result in a single argument, not two. This fixes PR2598, for which a testcase has been added as well. llvm-svn: 54159
-
Matthijs Kooijman authored
just it's name, which is often empty. Also remove a newline from the output that wasn't really needed. llvm-svn: 54158
-
Matthijs Kooijman authored
llvm-svn: 54157
-
Evan Cheng authored
Fix for PR2578. Do not split off a block whose size is less than FreeRangeHeader::getMinBlockSize(). Patch by Damien. llvm-svn: 54152
-
Chris Lattner authored
llvm-svn: 54151
-
Dan Gohman authored
llvm-svn: 54148
-
Dan Gohman authored
which is represented in codegen as an 'and' operation. This matches them with movz instructions, instead of leaving them to be matched by and instructions with an immediate field. llvm-svn: 54147
-
- Jul 28, 2008
-
-
Dan Gohman authored
a new ilist_node class, and remove them. Unlike alist_node, ilist_node doesn't attempt to manage storage itself, so it avoids the associated problems, including being opaque in gdb. Adjust the Recycler class so that it doesn't depend on alist_node. Also, change it to use explicit Size and Align parameters, allowing it to work when the largest-sized node doesn't have the greatest alignment requirement. Change MachineInstr's MachineMemOperand list from a pool-backed alist to a std::list for now. llvm-svn: 54146
-
Owen Anderson authored
llvm-svn: 54144
-
Bill Wendling authored
llvm-svn: 54143
-