summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Access the TargetLoweringInfo from the TargetMachine object instead of ↵Bill Wendling2013-06-1910-46/+56
| | | | | | caching it. The TLI may change between functions. No functionality change. llvm-svn: 184349
* Add operator!= as the compliment to operator==. This is for a future change.Bill Wendling2013-06-191-1/+4
| | | | llvm-svn: 184348
* Don't cache the TLI object since we have access to it through TargetMachine ↵Bill Wendling2013-06-192-8/+9
| | | | | | already. llvm-svn: 184346
* [APFloat] Expose isSmallest/isLargest as public methods.Michael Gottesman2013-06-191-12/+8
| | | | | | | I have had several requests to expose these two methods as public for various potential optimizations. llvm-svn: 184345
* Allow creation of single-byte MCAtoms.Ahmed Bougacha2013-06-192-2/+2
| | | | llvm-svn: 184344
* Move StructurizeCFG out of R600 to generic Transforms.Matt Arsenault2013-06-1910-70/+113
| | | | | | Register it with PassManager llvm-svn: 184343
* LSR: Fix the parameters used to compute the scaling factor cost.Quentin Colombet2013-06-192-5/+81
| | | | | | | | | | | | | Prior to this change, the considered addressing modes may be invalid since the maximum and minimum offsets were not taking into account. This was causing an assertion failure. The added test case exercices that behavior. <rdar://problem/14199725> Assertion failed: (CurScaleCost >= 0 && "Legal addressing mode has an illegal cost!") llvm-svn: 184341
* Add unit test to test a trivial verifier check.Bill Wendling2013-06-191-0/+16
| | | | llvm-svn: 184338
* Always set the mode.Rafael Espindola2013-06-192-13/+10
| | | | | | | This matches GNU ar behavior. Also remove the now unused getFileStatus method. Not sure how to add a test, it would have to run ls -l or something like that. llvm-svn: 184337
* Remove more uses of sys::Path.Rafael Espindola2013-06-195-52/+46
| | | | llvm-svn: 184328
* SLPVectorizer: handle scalars that are extracted from vectors (using ↵Nadav Rotem2013-06-192-0/+103
| | | | | | ExtractElementInst). llvm-svn: 184325
* Remove unused function.Rafael Espindola2013-06-192-33/+0
| | | | llvm-svn: 184320
* Another attempt at fixing the bots.Rafael Espindola2013-06-191-1/+1
| | | | llvm-svn: 184318
* SLPVectorizer: start constructing chains at stores that are not power of two.Nadav Rotem2013-06-192-3/+63
| | | | | | | | The type <3 x i8> is a common in graphics and we want to be able to vectorize it. This changes accelerates bullet by 12% and 471_omnetpp by 5%. llvm-svn: 184317
* Attempt at fixing some bots.Rafael Espindola2013-06-191-1/+1
| | | | llvm-svn: 184316
* Reduce sys::Path usage in llvm-ar.Rafael Espindola2013-06-195-35/+39
| | | | llvm-svn: 184315
* Remove Path::getDirectoryContents.Rafael Espindola2013-06-193-88/+0
| | | | llvm-svn: 184311
* Remove the 'R' modifier.Rafael Espindola2013-06-192-45/+6
| | | | | | | It is not present in GNU or OS X versions and doesn't make a lot of sense for llvm-ar. llvm-svn: 184306
* Remove Path::isObjectFile.Rafael Espindola2013-06-192-19/+0
| | | | llvm-svn: 184305
* Remove Path::canExecute.Rafael Espindola2013-06-193-27/+0
| | | | llvm-svn: 184298
* The RenderMethod field in RegisterOperand class sets the name of the method ↵Vladimir Medic2013-06-192-19/+10
| | | | | | on the target specific operand to call to add the target specific operand to an MCInst. This patch defines RenderMethod for mips RegisterOperand classes and removes redundant code from MipsAsmParser.cpp llvm-svn: 184292
* MachOUniversal.cpp: Fix abuse of Twine. It would be sufficient to use ↵NAKAMURA Takumi2013-06-191-3/+3
| | | | | | std::string instead. llvm-svn: 184291
* Fixed comment typo that causes the given comment to actually make sense.Michael Gottesman2013-06-191-1/+1
| | | | llvm-svn: 184286
* SLPVectorizer: vectorize compares and selects.Nadav Rotem2013-06-192-3/+107
| | | | llvm-svn: 184282
* Document the return value and fix a typo.Nadav Rotem2013-06-191-1/+2
| | | | llvm-svn: 184281
* Test commit access.Wan Xiaofei2013-06-191-0/+1
| | | | llvm-svn: 184278
* Remove `using namespace` and use explicit qualification.Sean Silva2013-06-191-3/+2
| | | | | | There were only two places it was actually making anything shorter. llvm-svn: 184273
* Remove spurious space.Sean Silva2013-06-191-1/+1
| | | | llvm-svn: 184272
* Remove unused parameter.Sean Silva2013-06-191-2/+1
| | | | | | | | Not sure why we weren't catching this with -Wunused-parameter... Spotted by inspection. llvm-svn: 184271
* [yaml2obj][ELF] Beef up this test a bit.Sean Silva2013-06-191-0/+1
| | | | llvm-svn: 184269
* [yaml2obj][ELF] Support ELFOSABI_* enum.Sean Silva2013-06-194-2/+46
| | | | llvm-svn: 184268
* There is no ELF ABI version enum.Sean Silva2013-06-191-1/+0
| | | | llvm-svn: 184267
* [yaml2obj][ELF] Support st_info through `Binding` and `Type` YAML keys.Sean Silva2013-06-194-0/+44
| | | | llvm-svn: 184263
* Use GetUnderlyingObject instead of custom functionMatt Arsenault2013-06-181-58/+20
| | | | llvm-svn: 184261
* [yaml2obj][ELF] Don't monkeypatch the YAML sections.Sean Silva2013-06-181-14/+17
| | | | | | | | | | | | | Previously, we would monkeypatch the vector of YAML::Section's in order to ensure that the SHT_NULL entry is present. Now we just add it unconditionally. The proliferation of small numerical adjustments is beginning to frighten me, but I can't think of a way having a single point of truth for them without introducing a whole new layer of data structures (i.e. lots of code and complexity) between the YAML and binary ELF formats. llvm-svn: 184260
* [yaml2obj][ELF] Ensure STN_UNDEF entry is present.Sean Silva2013-06-182-2/+6
| | | | llvm-svn: 184258
* [yaml2obj][ELF] Rudimentary symbol table support.Sean Silva2013-06-184-2/+86
| | | | | | Currently, we only output the name. llvm-svn: 184255
* Small correction to unordered memory code generation of ARM LDRDJF Bastien2013-06-181-1/+1
| | | | | | The information was correct pre-LPAE. llvm-svn: 184253
* Identify me on IRC.Bill Wendling2013-06-181-0/+1
| | | | llvm-svn: 184247
* ARM: Add optional datatype suffix to NEON mvn asm syntax.Jim Grosbach2013-06-182-1/+45
| | | | | | rdar://14194152 llvm-svn: 184244
* [yaml2obj][ELF] Add dummy .strtab section.Sean Silva2013-06-181-3/+11
| | | | | | | This will be needed later for holding symbol names, due to the libObject issue mentioned in the commit message of r184161. llvm-svn: 184242
* We want a string representation of the attribute, not the kind as a string.Bill Wendling2013-06-181-2/+2
| | | | llvm-svn: 184239
* AArch64: remove accidental test output file.Tim Northover2013-06-181-208/+0
| | | | llvm-svn: 184236
* Remove Path::canWrite.Rafael Espindola2013-06-183-22/+0
| | | | llvm-svn: 184235
* Add a can_write function to PathV2.Rafael Espindola2013-06-183-0/+24
| | | | llvm-svn: 184233
* [ARMTargetLowering] ARMISD::{SUB,ADD}{C,E} second result is a boolean ↵Michael Gottesman2013-06-181-1/+11
| | | | | | implying that upper bits are always 0. llvm-svn: 184231
* Converted an overly aggressive assert to a conditional check in ↵Michael Gottesman2013-06-181-2/+5
| | | | | | | | | | | | | | | | | | AddCombineTo64bitMLAL. Said assert assumes that ADDC will always have a glue node as its second argument and is checked before we even know that we are actually performing the relevant MLAL optimization. This is incorrect since on ARM we *CAN* codegen ADDC with a use list based second argument. Thus to have both effects, I converted the assert to a conditional check which if it fails we do not perform the optimization. In terms of tests I can not produce an ADDC from the IR level until I get in my multiprecision optimization patch which is forthcoming. The tests for said patch would cause this assert to fail implying that said tests will provide the relevant tests. llvm-svn: 184230
* Remove unused Path::canRead.Rafael Espindola2013-06-183-21/+0
| | | | llvm-svn: 184229
* Fix 80 col violation.Nadav Rotem2013-06-181-3/+6
| | | | llvm-svn: 184228
* Change the arm assembler to support this from the v7c spec:Kevin Enderby2013-06-183-1/+16
| | | | | | | | | | | | | | | "When assembling to the ARM instruction set, the .N qualifier produces an assembler error and the .W qualifier has no effect." In the pre-matcher handler in the asm parser the ".w" (wide) qualifier when in ARM mode is now discarded. And an error message is now produced when the ".n" (narrow) qualifier is used in ARM mode. Test cases for these were added. rdar://14064574 llvm-svn: 184224
OpenPOWER on IntegriCloud