- Aug 11, 2011
-
-
rdar://9930964Chris Lattner authored
It's somewhat surprising anything works without this. Before we would compile the testcase into: test: # @test movl $4, 8(%rdi) movl 8(%rdi), %eax orl %esi, %eax cmpl $32, %edx movl %eax, -4(%rsp) # 4-byte Spill je .LBB0_2 now we produce: test: # @test movl 8(%rdi), %eax movl $4, 8(%rdi) orl %esi, %eax cmpl $32, %edx movl %eax, -4(%rsp) # 4-byte Spill je .LBB0_2 llvm-svn: 137303
-
Craig Topper authored
llvm-svn: 137302
-
Craig Topper authored
llvm-svn: 137301
-
Greg Clayton authored
llvm-svn: 137300
-
Craig Topper authored
llvm-svn: 137299
-
Craig Topper authored
llvm-svn: 137298
-
Bruno Cardoso Lopes authored
llvm-svn: 137297
-
Bruno Cardoso Lopes authored
infinite recursive calls in legalize. Fix PR10562 llvm-svn: 137296
-
Bruno Cardoso Lopes authored
could only get undefs and the vector shuffle becomes an undef, generating wrong code. llvm-svn: 137295
-
Greg Clayton authored
This is helping us track down some extra references to ModuleSP objects that are causing things to get kept around for too long. Added a module pointer accessor to target and change a lot of code to use it where it would be more efficient. "taret delete" can now specify "--clean=1" which will cleanup the global module list for any orphaned module in the shared module cache which can save memory and also help track down module reference leaks like we have now. llvm-svn: 137294
-
John McCall authored
hierarchy of delegation, and that EH selector values are meaningful function-wide (good thing, too, or inlining wouldn't work). 2,3d 1a hierarchy of delegation and that EH selector values have the same meaning everywhere in the function instead of being meaningful only in the context of a specific selector. This removes the need for routing edges through EH cleanups, since a cleanup simply always branches to its enclosing scope. llvm-svn: 137293
-
Eli Friedman authored
Fix X86TargetLowering::LowerExternalSymbol so that it actually works in non-trivial cases. This hasn't been an issue before because the function isn't normally called (but apparently is used to generate a tail-call to sin() on ELF x86-32 with PIC and SSE2). Fixes PR9693. llvm-svn: 137292
-
Johnny Chen authored
Add code to test case to create an evil linked list with: task_evil -> task_2 -> task_3 -> task_evil ... and to check that the linked list iterator only iterates 3 times. llvm-svn: 137291
-
Anna Zaks authored
llvm-svn: 137290
-
Johnny Chen authored
Change the SBValue.linked_list_iter() to treat the value object as a homogeneous linked list data structure where an empty linked list is represented as a value object with a NULL value, instead of a special value object which 'points' to NULL. Also modifies the test case to comply. rdar://problem/9933692 llvm-svn: 137289
-
Johnny Chen authored
llvm-svn: 137288
-
Jim Ingham authored
llvm-svn: 137287
-
Chad Rosier authored
llvm-svn: 137286
-
Johnny Chen authored
When a benchmarks test fails, the re-run command should include the '+b' option instead of the '-t' option. llvm-svn: 137285
-
Anna Zaks authored
Cleanup: remove CleanedSate member and GetState() wrapper from StmtNodeBuilder, not needed as of r137273. llvm-svn: 137284
-
Devang Patel authored
llvm-svn: 137283
-
Jim Grosbach authored
llvm-svn: 137282
-
Anna Zaks authored
llvm-svn: 137279
-
Jim Grosbach authored
llvm-svn: 137277
-
Andrew Trick authored
An algorithm for incrementally updating LoopInfo within a LoopPassManager. The incremental update should be extremely cheap in most cases and can be used in places where it's not feasible to regenerate the entire loop forest. - "Unloop" is a node in the loop tree whose last backedge has been removed. - Perform reverse dataflow on the block inside Unloop to propagate the nearest loop from the block's successors. - For reducible CFG, each block in unloop is visited exactly once. This is because unloop no longer has a backedge and blocks within subloops don't change parents. - Immediate subloops are summarized by the nearest loop reachable from their exits or exits within nested subloops. - At completion the unloop blocks each have a new parent loop, and each immediate subloop has a new parent. llvm-svn: 137276
-
Johnny Chen authored
llvm-svn: 137275
-
Jim Grosbach authored
llvm-svn: 137274
-
Anna Zaks authored
Analyzer Core: In checkDeadSymbols checker callback, provide the state in which the symbols are not yet deleted so that checkers could inspect them. Since we are now always creating a transition in ProcessStmt(), remove the logic for adding a transition when none was generated. TODO: the extra transitions will have to be removed; more cleanups; a checker that tests teh new fucntionality. llvm-svn: 137273
-
Jim Grosbach authored
llvm-svn: 137272
-
Jim Grosbach authored
llvm-svn: 137271
-
Jim Grosbach authored
llvm-svn: 137270
-
Johnny Chen authored
llvm-svn: 137267
-
Jim Grosbach authored
llvm-svn: 137265
-
Andrew Trick authored
llvm-svn: 137264
-
Jim Grosbach authored
llvm-svn: 137263
-
NAKAMURA Takumi authored
llvm-svn: 137262
-
Jim Grosbach authored
llvm-svn: 137261
-
Jim Grosbach authored
llvm-svn: 137260
-
Richard Trieu authored
llvm-svn: 137259
-
Jim Grosbach authored
llvm-svn: 137258
-