Bill Wendling
1919cdf3c7
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
10538a34d1
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
dbd80b66e0
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
5ddf4e5f6f
[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
8596c56ff2
Allow creation of single-byte MCAtoms.
...
llvm-svn: 184344
2013-06-19 20:18:59 +00:00
Matt Arsenault
fb5518e48b
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
4633bd4a55
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
8d83852261
Add unit test to test a trivial verifier check.
...
llvm-svn: 184338
2013-06-19 19:26:44 +00:00
Rafael Espindola
360f929145
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
9cf9cbd80e
Remove more uses of sys::Path.
...
llvm-svn: 184328
2013-06-19 17:49:07 +00:00
Nadav Rotem
a578c6d3ad
SLPVectorizer: handle scalars that are extracted from vectors (using ExtractElementInst).
...
llvm-svn: 184325
2013-06-19 17:33:16 +00:00
Rafael Espindola
7aa228a8e4
Remove unused function.
...
llvm-svn: 184320
2013-06-19 16:47:34 +00:00
Rafael Espindola
ad605fef8b
Another attempt at fixing the bots.
...
llvm-svn: 184318
2013-06-19 16:16:13 +00:00
Nadav Rotem
79be778ce2
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
8c2d4ffc5c
Attempt at fixing some bots.
...
llvm-svn: 184316
2013-06-19 15:56:53 +00:00
Rafael Espindola
a05f991a23
Reduce sys::Path usage in llvm-ar.
...
llvm-svn: 184315
2013-06-19 15:45:37 +00:00
Rafael Espindola
8db1ef8cde
Remove Path::getDirectoryContents.
...
llvm-svn: 184311
2013-06-19 15:32:37 +00:00
Rafael Espindola
39374be683
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
24a81dcac4
Remove Path::isObjectFile.
...
llvm-svn: 184305
2013-06-19 14:25:38 +00:00
Rafael Espindola
9f3be55a57
Remove Path::canExecute.
...
llvm-svn: 184298
2013-06-19 13:25:31 +00:00
Vladimir Medic
10551de6bd
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
e8b9470337
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
f89e76a9ad
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
61c4560eab
SLPVectorizer: vectorize compares and selects.
...
llvm-svn: 184282
2013-06-19 05:49:52 +00:00
Nadav Rotem
9accad7fa1
Document the return value and fix a typo.
...
llvm-svn: 184281
2013-06-19 05:47:33 +00:00
Wan Xiaofei
7823455a4b
Test commit access.
...
llvm-svn: 184278
2013-06-19 02:26:00 +00:00
Sean Silva
b0fb5cb3dc
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
c542be787e
Remove spurious space.
...
llvm-svn: 184272
2013-06-19 01:10:58 +00:00
Sean Silva
e9371a8a2c
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
0c458f147b
[yaml2obj][ELF] Beef up this test a bit.
...
llvm-svn: 184269
2013-06-19 00:55:32 +00:00
Sean Silva
a39ac0fdeb
[yaml2obj][ELF] Support ELFOSABI_* enum.
...
llvm-svn: 184268
2013-06-19 00:55:28 +00:00
Sean Silva
5b5567b80b
There is no ELF ABI version enum.
...
llvm-svn: 184267
2013-06-19 00:55:23 +00:00
Sean Silva
c7a5f8cb18
[yaml2obj][ELF] Support st_info through Binding
and Type
YAML keys.
...
llvm-svn: 184263
2013-06-19 00:11:59 +00:00
Matt Arsenault
fac93f05f8
Use GetUnderlyingObject instead of custom function
...
llvm-svn: 184261
2013-06-18 23:37:58 +00:00
Sean Silva
af68c9e26b
[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
3fd655ca4d
[yaml2obj][ELF] Ensure STN_UNDEF entry is present.
...
llvm-svn: 184258
2013-06-18 23:19:17 +00:00
Sean Silva
beed0c8948
[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
6271cba6e0
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
e859ec24ba
Identify me on IRC.
...
llvm-svn: 184247
2013-06-18 22:09:36 +00:00
Jim Grosbach
0f0c0ac8be
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
396d02068a
[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
025f285316
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
7700179b08
AArch64: remove accidental test output file.
...
llvm-svn: 184236
2013-06-18 21:16:53 +00:00
Rafael Espindola
7250573745
Remove Path::canWrite.
...
llvm-svn: 184235
2013-06-18 21:10:03 +00:00
Rafael Espindola
40fa7cd224
Add a can_write function to PathV2.
...
llvm-svn: 184233
2013-06-18 20:56:38 +00:00
Michael Gottesman
5a5656f17d
[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
dde9797dc2
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
9c21fca143
Remove unused Path::canRead.
...
llvm-svn: 184229
2013-06-18 20:42:25 +00:00
Nadav Rotem
742cff8193
Fix 80 col violation.
...
llvm-svn: 184228
2013-06-18 20:41:52 +00:00
Kevin Enderby
cb41cc56c6
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