Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | macho-dump: Add support for --dump-section-data and tweak a few format strings. | Daniel Dunbar | 2010-11-27 | 1 | -0/+4 | |
| | | | | llvm-svn: 120219 | |||||
* | macho-dump: Add support for dumping symbol table entries. | Daniel Dunbar | 2010-11-27 | 1 | -0/+28 | |
| | | | | llvm-svn: 120218 | |||||
* | macho-dump: Add support for dumping string table data. | Daniel Dunbar | 2010-11-27 | 1 | -1/+7 | |
| | | | | llvm-svn: 120217 | |||||
* | macho-dump: Add support for dumping relocation entries. | Daniel Dunbar | 2010-11-27 | 2 | -14/+22 | |
| | | | | llvm-svn: 120216 | |||||
* | macho-dump: Add support for dumping sections. | Daniel Dunbar | 2010-11-27 | 1 | -0/+46 | |
| | | | | llvm-svn: 120215 | |||||
* | macho-dump: Add support for dumping dysymtab indirect symbol table. | Daniel Dunbar | 2010-11-27 | 1 | -0/+13 | |
| | | | | llvm-svn: 120214 | |||||
* | Unbreak build for newer GCCs. | Benjamin Kramer | 2010-11-27 | 1 | -4/+4 | |
| | | | | llvm-svn: 120205 | |||||
* | macho-dump: Add support for dumping symtab and dysymtab commands. | Daniel Dunbar | 2010-11-27 | 1 | -0/+42 | |
| | | | | llvm-svn: 120204 | |||||
* | macho-dump: Add support for dumping segment load commands. | Daniel Dunbar | 2010-11-27 | 1 | -0/+68 | |
| | | | | llvm-svn: 120203 | |||||
* | Second attempt at fixing the performance regressions introduced | Owen Anderson | 2010-11-27 | 1 | -24/+55 | |
| | | | | | | | | by my recent GVN improvement. Looking through a single layer of PHI nodes when attempting to sink GEPs, we need to iteratively look through arbitrary PHI nests. llvm-svn: 120202 | |||||
* | raw_ostream::write_escaped: Add a UseHexEscapes argument. | Daniel Dunbar | 2010-11-27 | 1 | -6/+15 | |
| | | | | llvm-svn: 120200 | |||||
* | Fix a comment. | Daniel Dunbar | 2010-11-27 | 1 | -2/+1 | |
| | | | | llvm-svn: 120199 | |||||
* | Object/Mach-O: Add header and load command information. | Daniel Dunbar | 2010-11-27 | 1 | -3/+80 | |
| | | | | llvm-svn: 120198 | |||||
* | Refactor. Set alignment bit in VLD1-dup instruction classes. | Bob Wilson | 2010-11-27 | 1 | -25/+17 | |
| | | | | llvm-svn: 120197 | |||||
* | Object/Mach-O: Validate Mach-O magic and initialize format info. | Daniel Dunbar | 2010-11-27 | 1 | -2/+24 | |
| | | | | llvm-svn: 120195 | |||||
* | Add NEON VLD1-dup instructions (load 1 element to all lanes). | Bob Wilson | 2010-11-27 | 5 | -2/+119 | |
| | | | | llvm-svn: 120194 | |||||
* | Fix incorrect scheduling itineraries for NEON vld1/vst1 instructions. | Bob Wilson | 2010-11-27 | 2 | -8/+8 | |
| | | | | | | | | I added these instructions recently but I have no idea where these "1" values in the NextCycles field came from. As far as I can tell now, these instruction stages are clearly intended to overlap. llvm-svn: 120193 | |||||
* | MC/Mach-O: Start stubbing out a Mach-O object file wrapper. | Daniel Dunbar | 2010-11-27 | 2 | -0/+24 | |
| | | | | llvm-svn: 120190 | |||||
* | Reduce nesting. | Daniel Dunbar | 2010-11-27 | 1 | -20/+26 | |
| | | | | llvm-svn: 120189 | |||||
* | MC/Mach-O: Migrate more constants into MachOFormat.h. | Daniel Dunbar | 2010-11-27 | 1 | -104/+37 | |
| | | | | llvm-svn: 120188 | |||||
* | MC/Mach-O: Switch to using MachOFormat.h. | Daniel Dunbar | 2010-11-27 | 3 | -13/+15 | |
| | | | | | | - I'm leaving MachO.h, because I believe it has external consumers, but I would really like to eliminate it (we have stylistic disagreements with one another). llvm-svn: 120187 | |||||
* | MC/Mach-O: Introduce Object/MachOFormat for describing purely platform / machine | Daniel Dunbar | 2010-11-27 | 1 | -38/+24 | |
| | | | | | | | independent information on the Mach object format, and move some stuff from MachObjectWriter.cpp there. llvm-svn: 120186 | |||||
* | Remove the unused TheTarget member. | Rafael Espindola | 2010-11-26 | 5 | -7/+7 | |
| | | | | llvm-svn: 120168 | |||||
* | Fix Whitespace. | Michael J. Spencer | 2010-11-26 | 3 | -41/+41 | |
| | | | | llvm-svn: 120166 | |||||
* | Move tree navigation to a new Path class that doesn't have to be a template. | Jakob Stoklund Olesen | 2010-11-26 | 1 | -1/+102 | |
| | | | | | | | | The path also holds a reference to the root node, and that allows important iterator accessors like start() and stop() to have no conditional code. (When the compiler is clever enough to remove it.) llvm-svn: 120165 | |||||
* | Use multiple 0x66 prefixes so that all nops up to 15 bytes are a single ↵ | Rafael Espindola | 2010-11-25 | 1 | -24/+8 | |
| | | | | | | instruction. llvm-svn: 120147 | |||||
* | Namespacify. | Benjamin Kramer | 2010-11-25 | 2 | -3/+3 | |
| | | | | llvm-svn: 120146 | |||||
* | Factor some code to parseSectionFlags and fix the default type of a section. | Rafael Espindola | 2010-11-25 | 1 | -49/+58 | |
| | | | | llvm-svn: 120145 | |||||
* | Treat a call of function pointer like a load of the pointer when considering | Nick Lewycky | 2010-11-24 | 1 | -1/+6 | |
| | | | | | | | whether the pointer can be replaced with the global variable it is a copy of. Fixes PR8680. llvm-svn: 120126 | |||||
* | Behave a bit more like gnu as and use the symbol (instead of the section) | Rafael Espindola | 2010-11-24 | 2 | -6/+18 | |
| | | | | | | for any relocation to a symbol defined in a tls section. llvm-svn: 120121 | |||||
* | Relocate with the symbol if the relocation is of kind NTPOFF. | Rafael Espindola | 2010-11-24 | 1 | -1/+2 | |
| | | | | | | Patch by David Meyer, I added the test. llvm-svn: 120104 | |||||
* | Fix and add tests for all cases in x86 and x86_64 where gnu as implicitly | Rafael Espindola | 2010-11-24 | 1 | -5/+13 | |
| | | | | | | sets the type of a symbol to STT_TLS. llvm-svn: 120100 | |||||
* | Updating MBlaze .mask and .frame directives to match GCC's output and fixing ↵ | Wesley Peck | 2010-11-24 | 1 | -12/+19 | |
| | | | | | | regression introduced in 120095 by checking MCStreamer::hasRawTextSupport. llvm-svn: 120097 | |||||
* | 1. Fixing error where basic block labels were not being printed out when ↵ | Wesley Peck | 2010-11-24 | 5 | -33/+126 | |
| | | | | | | | | | | they need to be for the MBlaze backend because AsmPrinter::isBlockOnlyReachableByFallthrough does not take into account delay slots. 2. Re-adding .mask and .frame directives in printed assembly. 3. Adding .ent and .end directives in printed assembly. 4. Minor cleanups to MBlaze backend. llvm-svn: 120095 | |||||
* | Use i8 as SETCC result type for i1 in SPU. | Kalle Raiskila | 2010-11-24 | 1 | -4/+14 | |
| | | | | llvm-svn: 120092 | |||||
* | Allow for 'fcmp ogt' in SPU. | Kalle Raiskila | 2010-11-24 | 1 | -2/+2 | |
| | | | | | | Fix by Visa Putkinen! llvm-svn: 120090 | |||||
* | If a symbol is used as tls, mark it as tls even if not declare as so. Probably | Rafael Espindola | 2010-11-24 | 1 | -0/+40 | |
| | | | | | | fixes PR8659. llvm-svn: 120076 | |||||
* | add a MemoryBuffer::getOpenFile method, which turns an open | Chris Lattner | 2010-11-23 | 1 | -0/+7 | |
| | | | | | | file descriptor into a MemoryBuffer (and closes the FD). llvm-svn: 120065 | |||||
* | Rename SimplifyDistributed to the more meaningfull name SimplifyByFactorizing. | Duncan Sands | 2010-11-23 | 4 | -15/+15 | |
| | | | | llvm-svn: 120051 | |||||
* | The srem -> urem transform is not safe for any divisor that's not a power of ↵ | Benjamin Kramer | 2010-11-23 | 2 | -13/+11 | |
| | | | | | | | | | | two. E.g. -5 % 5 is 0 with srem and 1 with urem. Also addresses Frits van Bommel's comments. llvm-svn: 120049 | |||||
* | Replace calls to ConstantFoldInstruction with calls to SimplifyInstruction | Duncan Sands | 2010-11-23 | 2 | -11/+12 | |
| | | | | | | | in two places that are really interested in simplified instructions, not constants. llvm-svn: 120044 | |||||
* | Constant folding here is pointless, because InstructionSimplify | Duncan Sands | 2010-11-23 | 1 | -8/+1 | |
| | | | | | | | (which does constant folding and more) is called a few lines later. llvm-svn: 120042 | |||||
* | Move the ARM reloc constants to Support/ELF.h | Jason W Kim | 2010-11-23 | 2 | -142/+4 | |
| | | | | llvm-svn: 120035 | |||||
* | Recognize sign/zero-extended constant BUILD_VECTORs for VMULL operations. | Bob Wilson | 2010-11-23 | 1 | -13/+109 | |
| | | | | | | | We need to check if the individual vector elements are sign/zero-extended values. For now this only handles constants values. Radar 8687140. llvm-svn: 120034 | |||||
* | InstCombine: Reduce "X shift (A srem B)" to "X shift (A urem B)" iff B is ↵ | Benjamin Kramer | 2010-11-23 | 2 | -10/+17 | |
| | | | | | | | | positive. This allows to transform the rem in "1 << ((int)x % 8);" to an and. llvm-svn: 120028 | |||||
* | Propagate LeftDistributes and RightDistributes into their only uses. | Duncan Sands | 2010-11-23 | 1 | -6/+4 | |
| | | | | | | Stylistic improvement suggested by Frits van Bommel. llvm-svn: 120026 | |||||
* | Fix typo pointed out by Frits van Bommel and Marius Wachtler. | Duncan Sands | 2010-11-23 | 1 | -1/+1 | |
| | | | | llvm-svn: 120025 | |||||
* | Exploit distributive laws (eg: And distributes over Or, Mul over Add, etc) in a | Duncan Sands | 2010-11-23 | 4 | -42/+133 | |
| | | | | | | | | | | | | fairly systematic way in instcombine. Some of these cases were already dealt with, in which case I removed the existing code. The case of Add has a bunch of funky logic which covers some of this plus a few variants (considers shifts to be a form of multiplication), which I didn't touch. The simplification performed is: A*B+A*C -> A*(B+C). The improvement is to do this in cases that were not already handled [such as A*B-A*C -> A*(B-C), which was reported on the mailing list], and also to do it more often by not checking for "only one use" if "B+C" simplifies. llvm-svn: 120024 | |||||
* | Division by pow-of-2 is not cheap on SPU, do it with | Kalle Raiskila | 2010-11-23 | 1 | -2/+0 | |
| | | | | | | shifts. llvm-svn: 120022 | |||||
* | Implement the rex64 prefix. | Rafael Espindola | 2010-11-23 | 2 | -1/+5 | |
| | | | | llvm-svn: 120017 |