- Dec 21, 2012
-
-
Roman Divacky authored
llvm-svn: 170902
-
Tom Stellard authored
llvm-svn: 170901
-
Benjamin Kramer authored
This is very mechanical, no functionality change. Preparation for PR14667. llvm-svn: 170898
-
Evgeniy Stepanov authored
llvm-svn: 170883
-
Nadav Rotem authored
llvm-svn: 170842
-
Nadav Rotem authored
llvm-svn: 170841
-
Quentin Colombet authored
llvm-svn: 170840
-
Rafael Espindola authored
Now that we don't merge section and segment names, we don't need to skip the segment name to get to the section name. llvm-svn: 170839
-
Rafael Espindola authored
On MachO, sections also have segment names. When a tool looking at a .o file prints a segment name, this is what they mean. In reality, a .o has only one anonymous, segment. This patch adds a MachO only function to fetch that segment name. I named it getSectionFinalSegmentName since the main use for the name seems to be inform the linker with segment this section should go to. The patch also changes MachOObjectFile::getSectionName to return just the section name instead of computing SegmentName,SectionName. The main difference from the previous patch is that it doesn't use InMemoryStruct. It is extremely dangerous: if the endians match it returns a pointer to the file buffer, if not, it returns a pointer to an internal buffer that is overwritten in the next API call. We should change all of this code to use support::detail::packed_endian_specific_integral like ELF, but since these functions only handle strings, they work with big and little endian machines as is. I have tested this by installing ubuntu 12.10 ppc on qemu, that is why it took so long :-) llvm-svn: 170838
-
Evan Cheng authored
llvm-svn: 170836
-
Evan Cheng authored
llvm-svn: 170831
-
Nadav Rotem authored
llvm-svn: 170830
-
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
-
Reed Kotler authored
llvm-svn: 170822
-
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
-
- Dec 20, 2012
-
-
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
-
Eric Christopher authored
llvm-svn: 170771
-
Eric Christopher authored
into the DwarfUnits class. llvm-svn: 170770
-
Bill Wendling authored
Rename the AttributeImpl* from Attrs to pImpl to be consistent with other code. Add comments where none were before. Or doxygen-ify other comments. llvm-svn: 170767
-
Jakob Stoklund Olesen authored
llvm-svn: 170766
-
Bob Wilson authored
This reverts r170694. The operations can be represented in IR without adding any new intrinsics. llvm-svn: 170765
-
Nadav Rotem authored
Before if-conversion we could check if a value is loop invariant if it was declared inside the basic block. Now that loops have multiple blocks this check is incorrect. This fixes External/SPEC/CINT95/099_go/099_go llvm-svn: 170756
-
Evan Cheng authored
are more expensive than the non-flag setting variant. Teach thumb2 size reduction pass to avoid generating them unless we are optimizing for size. rdar://12892707 llvm-svn: 170728
-
Eli Bendersky authored
http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-December/056754.html The proposal and implementation are fully documented here: https://sites.google.com/a/chromium.org/dev/nativeclient/pnacl/aligned-bundling-support-in-llvm Tests will follow shortly. llvm-svn: 170718
-
Jakob Stoklund Olesen authored
llvm-svn: 170716
-
Jakob Stoklund Olesen authored
This is supposed to be a mechanical change with no functional effects. InstrEmitter can generate all types of MachineOperands which revealed that MachineInstrBuilder was missing a few methods, added by this patch. Besides providing a context pointer to MI::addOperand(), MachineInstrBuilder seems like a better fit for this code. llvm-svn: 170712
-
Jakob Stoklund Olesen authored
This automatically passes a context pointer to MI->addOperand(). llvm-svn: 170711
-
Nadav Rotem authored
llvm-svn: 170708
-
James Molloy authored
Add a new attribute, 'noduplicate'. If a function contains a noduplicate call, the call cannot be duplicated - Jump threading, loop unrolling, loop unswitching, and loop rotation are inhibited if they would duplicate the call. Similarly inlining of the function is inhibited, if that would duplicate the call (in particular inlining is still allowed when there is only one callsite and the function has internal linkage). llvm-svn: 170704
-
Roman Divacky authored
its only user, is gone. llvm-svn: 170699
-
Renato Golin authored
llvm.arm.neon.vsub[su].* intrinsics. Patch by Pete Couperus <pjcoup@gmail.com> llvm-svn: 170694
-
Craig Topper authored
llvm-svn: 170676
-
Craig Topper authored
llvm-svn: 170675
-
Reed Kotler authored
next few days but it's already tested a lot from test-suite and works fine. This patch completes almost 100% pass of test-suite for mips 16. llvm-svn: 170674
-
Reed Kotler authored
on code that has large frames which will not yet compile correctly. llvm-svn: 170673
-