Bill Wendling
afc1036f3e
Access the TargetLoweringInfo from the TargetMachine object instead of caching it. The TLI may change between functions. No functionality change.
...
llvm-svn: 184349
2013-06-19 20:51:24 +00:00
Bill Wendling
6eed5c4c45
Add operator!= as the compliment to operator==. This is for a future change.
...
llvm-svn: 184348
2013-06-19 20:50:12 +00:00
Bill Wendling
0ccf31007f
Don't cache the TLI object since we have access to it through TargetMachine already.
...
llvm-svn: 184346
2013-06-19 20:32:16 +00:00
Michael Gottesman
ccf763dcd6
[APFloat] Expose isSmallest/isLargest as public methods.
...
I have had several requests to expose these two methods as public for various
potential optimizations.
llvm-svn: 184345
2013-06-19 20:31:54 +00:00
Ahmed Bougacha
8a5e10555a
Allow creation of single-byte MCAtoms.
...
llvm-svn: 184344
2013-06-19 20:18:59 +00:00
Matt Arsenault
d46fce1141
Move StructurizeCFG out of R600 to generic Transforms.
...
Register it with PassManager
llvm-svn: 184343
2013-06-19 20:18:24 +00:00
Quentin Colombet
145eb97d3a
LSR: Fix the parameters used to compute the scaling factor cost.
...
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
2013-06-19 19:59:41 +00:00
Bill Wendling
e0d97dfa4e
Add unit test to test a trivial verifier check.
...
llvm-svn: 184338
2013-06-19 19:26:44 +00:00
Rafael Espindola
a88c119ba3
Always set the mode.
...
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
2013-06-19 19:17:15 +00:00
Rafael Espindola
351a88f697
Remove more uses of sys::Path.
...
llvm-svn: 184328
2013-06-19 17:49:07 +00:00
Nadav Rotem
1e9668ea81
SLPVectorizer: handle scalars that are extracted from vectors (using ExtractElementInst).
...
llvm-svn: 184325
2013-06-19 17:33:16 +00:00
Rafael Espindola
374f0e2a1f
Remove unused function.
...
llvm-svn: 184320
2013-06-19 16:47:34 +00:00
Rafael Espindola
b5375cd1b6
Another attempt at fixing the bots.
...
llvm-svn: 184318
2013-06-19 16:16:13 +00:00
Nadav Rotem
86e848c849
SLPVectorizer: start constructing chains at stores that are not power of two.
...
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
2013-06-19 15:57:29 +00:00
Rafael Espindola
18e8cf4335
Attempt at fixing some bots.
...
llvm-svn: 184316
2013-06-19 15:56:53 +00:00
Rafael Espindola
8417a7883b
Reduce sys::Path usage in llvm-ar.
...
llvm-svn: 184315
2013-06-19 15:45:37 +00:00
Rafael Espindola
02d0ec8e70
Remove Path::getDirectoryContents.
...
llvm-svn: 184311
2013-06-19 15:32:37 +00:00
Rafael Espindola
3703fd0d6f
Remove the 'R' modifier.
...
It is not present in GNU or OS X versions and doesn't make a lot of sense
for llvm-ar.
llvm-svn: 184306
2013-06-19 14:58:16 +00:00
Rafael Espindola
6d1e379158
Remove Path::isObjectFile.
...
llvm-svn: 184305
2013-06-19 14:25:38 +00:00
Rafael Espindola
988252dcd2
Remove Path::canExecute.
...
llvm-svn: 184298
2013-06-19 13:25:31 +00:00
Vladimir Medic
c69605951f
The RenderMethod field in RegisterOperand class sets the name of the method 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
2013-06-19 10:14:36 +00:00
NAKAMURA Takumi
db1bf3fd2d
MachOUniversal.cpp: Fix abuse of Twine. It would be sufficient to use std::string instead.
...
llvm-svn: 184291
2013-06-19 09:55:05 +00:00
Michael Gottesman
a7cc1243cc
Fixed comment typo that causes the given comment to actually make sense.
...
llvm-svn: 184286
2013-06-19 07:34:21 +00:00
Nadav Rotem
e98da7f548
SLPVectorizer: vectorize compares and selects.
...
llvm-svn: 184282
2013-06-19 05:49:52 +00:00
Nadav Rotem
4f3224f3ed
Document the return value and fix a typo.
...
llvm-svn: 184281
2013-06-19 05:47:33 +00:00
Wan Xiaofei
16577a58e3
Test commit access.
...
llvm-svn: 184278
2013-06-19 02:26:00 +00:00
Sean Silva
67416d72a5
Remove `using namespace` and use explicit qualification.
...
There were only two places it was actually making anything shorter.
llvm-svn: 184273
2013-06-19 01:13:28 +00:00
Sean Silva
b3a013a3a6
Remove spurious space.
...
llvm-svn: 184272
2013-06-19 01:10:58 +00:00
Sean Silva
0559d9e4d4
Remove unused parameter.
...
Not sure why we weren't catching this with -Wunused-parameter...
Spotted by inspection.
llvm-svn: 184271
2013-06-19 01:10:11 +00:00
Sean Silva
56137cd483
[yaml2obj][ELF] Beef up this test a bit.
...
llvm-svn: 184269
2013-06-19 00:55:32 +00:00
Sean Silva
8432251a9f
[yaml2obj][ELF] Support ELFOSABI_* enum.
...
llvm-svn: 184268
2013-06-19 00:55:28 +00:00
Sean Silva
8870a7e658
There is no ELF ABI version enum.
...
llvm-svn: 184267
2013-06-19 00:55:23 +00:00
Sean Silva
bba8559767
[yaml2obj][ELF] Support st_info through `Binding` and `Type` YAML keys.
...
llvm-svn: 184263
2013-06-19 00:11:59 +00:00
Matt Arsenault
2aabb06175
Use GetUnderlyingObject instead of custom function
...
llvm-svn: 184261
2013-06-18 23:37:58 +00:00
Sean Silva
bdf1986176
[yaml2obj][ELF] Don't monkeypatch the YAML sections.
...
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
2013-06-18 23:37:23 +00:00
Sean Silva
abe18db268
[yaml2obj][ELF] Ensure STN_UNDEF entry is present.
...
llvm-svn: 184258
2013-06-18 23:19:17 +00:00
Sean Silva
6b08388940
[yaml2obj][ELF] Rudimentary symbol table support.
...
Currently, we only output the name.
llvm-svn: 184255
2013-06-18 23:14:03 +00:00
JF Bastien
e84854a125
Small correction to unordered memory code generation of ARM LDRD
...
The information was correct pre-LPAE.
llvm-svn: 184253
2013-06-18 23:07:16 +00:00
Bill Wendling
07ac471914
Identify me on IRC.
...
llvm-svn: 184247
2013-06-18 22:09:36 +00:00
Jim Grosbach
a6ed57d8dd
ARM: Add optional datatype suffix to NEON mvn asm syntax.
...
rdar://14194152
llvm-svn: 184244
2013-06-18 21:49:21 +00:00
Sean Silva
c3131926c0
[yaml2obj][ELF] Add dummy .strtab section.
...
This will be needed later for holding symbol names, due to the libObject
issue mentioned in the commit message of r184161.
llvm-svn: 184242
2013-06-18 21:37:50 +00:00
Bill Wendling
1470e2077a
We want a string representation of the attribute, not the kind as a string.
...
llvm-svn: 184239
2013-06-18 21:27:00 +00:00
Tim Northover
1806f938b5
AArch64: remove accidental test output file.
...
llvm-svn: 184236
2013-06-18 21:16:53 +00:00
Rafael Espindola
2bf893664b
Remove Path::canWrite.
...
llvm-svn: 184235
2013-06-18 21:10:03 +00:00
Rafael Espindola
a1280c16fb
Add a can_write function to PathV2.
...
llvm-svn: 184233
2013-06-18 20:56:38 +00:00
Michael Gottesman
696e44efd4
[ARMTargetLowering] ARMISD::{SUB,ADD}{C,E} second result is a boolean implying that upper bits are always 0.
...
llvm-svn: 184231
2013-06-18 20:49:45 +00:00
Michael Gottesman
b2a70564a7
Converted an overly aggressive assert to a conditional check in 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
2013-06-18 20:49:40 +00:00
Rafael Espindola
3025f2366f
Remove unused Path::canRead.
...
llvm-svn: 184229
2013-06-18 20:42:25 +00:00
Nadav Rotem
7d6c625235
Fix 80 col violation.
...
llvm-svn: 184228
2013-06-18 20:41:52 +00:00
Kevin Enderby
c5d0935788
Change the arm assembler to support this from the v7c spec:
...
"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
2013-06-18 20:19:24 +00:00