- Dec 21, 2012
-
-
Evan Cheng authored
llvm-svn: 170836
-
NAKAMURA Takumi authored
Revert r170806, "Fix some bugs where we would sometimes use 0, not -1, when emitting a null constant of type pointer-to-data-member." It broke stage2. llvm-svn: 170835
-
Argyrios Kyrtzidis authored
a not-fully-formed macro invocation during code-completion. llvm-svn: 170833
-
Anna Zaks authored
llvm-svn: 170832
-
Evan Cheng authored
llvm-svn: 170831
-
Nadav Rotem authored
llvm-svn: 170830
-
Rafael Espindola authored
./bin/clang -cc1 -internal-isystem /home/espindola/llvm/build/lib/clang/3.3/include/ -analyze -analyzer-checker=debug.DumpCallGraph /home/espindola/llvm/clang/test/Analysis/debug-CallGraph.c -fblocks changes in each run. llvm-svn: 170829
-
Nadav Rotem authored
and not the return type, which is void. A number of test cases fail after adding the assertion in TTImpl. llvm-svn: 170828
-
Rafael Espindola authored
When we are visiting the extern declaration of 'i' in static int i = 99; int foo() { extern int i; return i; } We should not try to handle it as if it was an function static. That is, we must consider the written storage class. Fixing this then exposes that the assert in EmitGlobalVarDeclLValue and the if leading to its call are not completely accurate. They were passing before because the second decl was marked as having external storage. I changed them to check the linkage, which I find easier to understand. Last but not least, there is something strange going on with cuda and opencl. My guess is that the linkage computation for these languages needs to be audited, but I didn't want to change that in this patch so I just updated the storage classes to keep the current behavior. Thanks to Reed Kotler for reporting this. llvm-svn: 170827
-
Anna Zaks authored
Modify the call graph by removing the parentless nodes. Instead all nodes are children of root to ensure they are all reachable. Remove the tracking of nodes that are "top level" or global. This information is not used and can be obtained from the Decls stored inside CallGraphNodes. Instead of existing ordering hacks, analyze the functions in topological order over the Call Graph. Together with the addition of devirtualizable ObjC message sends and blocks to the call graph, this gives around 6% performance improvement on several large ObjC benchmarks. llvm-svn: 170826
-
Anna Zaks authored
This paves the road for constructing a better function dependency graph. If we analyze a function before the functions it calls and inlines, there is more opportunity for optimization. Note, we add call edges to the called methods that correspond to function definitions (declarations with bodies). llvm-svn: 170825
-
Argyrios Kyrtzidis authored
the macro invocation is not fully formed. rdar://11290992 llvm-svn: 170824
-
Reed Kotler authored
llvm-svn: 170823
-
Reed Kotler authored
llvm-svn: 170822
-
Sean Silva authored
Hopefully these benchmarks will be updated in the future, so avoid hardcoding image dimensions. llvm-svn: 170819
-
Andrew Kaylor authored
Not all of the expected instructions were being generated for the function being disassembled on x86-64-based Linux. It had no push, pop or leave. llvm-svn: 170818
-
NAKAMURA Takumi authored
llvm-svn: 170817
-
Sean Silva authored
Tell the image to be its natural size. llvm-svn: 170816
-
Sean Silva authored
Sphinx's syntax highlighter doesn't recognize the new literals, so the syntax highlighting is pretty pathetic. llvm-svn: 170814
-
Sean Silva authored
llvm-svn: 170813
-
Sean Silva authored
llvm-svn: 170812
-
Nadav Rotem authored
memory bound checks. Before the fix we were able to vectorize this loop from the Livermore Loops benchmark: for ( k=1 ; k<n ; k++ ) x[k] = x[k-1] + y[k]; llvm-svn: 170811
-
Eric Christopher authored
llvm-svn: 170810
-
Richard Smith authored
Fix some bugs where we would sometimes use 0, not -1, when emitting a null constant of type pointer-to-data-member. llvm-svn: 170806
-
Douglas Gregor authored
llvm-svn: 170804
-
Sean Silva authored
Please squawk if you find this appalling or otherwise don't like it. llvm-svn: 170803
-
Douglas Gregor authored
llvm-svn: 170801
-
Andrew Kaylor authored
llvm-svn: 170800
-
- Dec 20, 2012
-
-
Sean Silva authored
llvm-svn: 170799
-
Jakob Stoklund Olesen authored
Instructions that are inserted in a basic block can still be decorated with addOperand(MO). Make the two-argument addOperand() function contain the actual implementation. This function will now always have a valid MF reference that it can use for memory allocation. llvm-svn: 170798
-
Jakob Stoklund Olesen authored
This function is often used to decorate dangling instructions, so a context reference is required to allocate memory for the operands. Also add a corresponding MachineInstrBuilder method. llvm-svn: 170797
-
Jakob Stoklund Olesen authored
llvm-svn: 170796
-
Jakob Stoklund Olesen authored
llvm-svn: 170795
-
Jakob Stoklund Olesen authored
llvm-svn: 170794
-
Eli Bendersky authored
for code that wasn't even in bundling mode. llvm-svn: 170793
-
Sean Silva authored
llvm-svn: 170792
-
Sean Silva authored
llvm-svn: 170791
-
Sean Silva authored
Add links in the intro paragraph. Add table of contents. llvm-svn: 170790
-
Ted Kremenek authored
Per code feedback, I want to see if there is a more general way to do this. llvm-svn: 170777
-
Sean Silva authored
llvm-svn: 170776
-