Andrew Trick
17591a1080
Machine model: Generate table entries for super-resources.
...
Super-resources and resource groups are two ways of expressing
overlapping sets of processor resources. Now we generate table entries
the same way for both so the scheduler never needs to explicitly check
for super-resources.
llvm-svn: 180162
2013-04-23 23:45:16 +00:00
Andrew Trick
3a4f1261f9
Machine model: verify well-formed processor resource groups.
...
llvm-svn: 180161
2013-04-23 23:45:14 +00:00
Andrew Trick
69561e2961
Machine model: rewrite a tablegen loop to avoid comparing record pointers.
...
llvm-svn: 180160
2013-04-23 23:45:11 +00:00
Andrew Trick
ead4a7f8ab
Comment a strange field in ScheduleDAG.
...
llvm-svn: 180159
2013-04-23 23:45:08 +00:00
Eric Christopher
51e1be25e5
Fix dependency layering issues caused by r180112.
...
Patch by Tom Stellard. (Committed while he's afk per request)
llvm-svn: 180157
2013-04-23 22:53:53 +00:00
Andrew Kaylor
5aa8854f0e
Fixing cmake build for MCJIT unit tests
...
llvm-svn: 180150
2013-04-23 21:46:56 +00:00
Andrew Kaylor
4c8e4e9ff1
Fixing typo in comment.
...
llvm-svn: 180147
2013-04-23 21:32:32 +00:00
Andrew Kaylor
af75f2d095
Adding object caching support to MCJIT
...
llvm-svn: 180146
2013-04-23 21:26:38 +00:00
Jyotsna Verma
4a5d195942
Hexagon: Use multiclass for combine and STri[bhwd]_shl_V4 instructions.
...
llvm-svn: 180145
2013-04-23 21:17:40 +00:00
Jyotsna Verma
d985cbcb4e
Hexagon: Define relations for GP-relative instructions.
...
No functionality change.
llvm-svn: 180144
2013-04-23 21:05:55 +00:00
Adrian Prantl
f7c84e0f56
Make sure the instruction right after an inlined function has a
...
debug location. This solves a problem where range of an inlined
subroutine is emitted wrongly.
Patch by Manman Ren.
Fixes rdar://problem/12415623
llvm-svn: 180140
2013-04-23 19:56:03 +00:00
Stephen Lin
44a24c9593
Add more tests for r179925 to verify correct handling of signext/zeroext; strengthen condition check to require actual MVT::i32 virtual register types, just in case (no actual functionality change)
...
llvm-svn: 180138
2013-04-23 19:42:25 +00:00
Rafael Espindola
3d1e86bc2f
Fix typo.
...
llvm-svn: 180137
2013-04-23 19:39:34 +00:00
Stephen Lin
93ced316ad
Lowercase "is" boolean variable prefix for consistency within function, no functionality change.
...
llvm-svn: 180136
2013-04-23 19:30:12 +00:00
Rafael Espindola
9c73b5059b
Simplify yaml2obj a bit.
...
The COFFParser now contains only a COFFYAML::Object and the string table
(which is recomputed, not serialized).
The structs in COFFParser now all begin with a Header field with what is
actually on the COFF object. The other fields are things that are semantically
part of the struct (relocations in a section for exmaple), but are not actually
represented that way in the object file.
llvm-svn: 180134
2013-04-23 19:26:43 +00:00
Jyotsna Verma
624f2e0434
Hexagon: Remove assembler mapped instruction definitions.
...
llvm-svn: 180133
2013-04-23 19:15:55 +00:00
Bill Schmidt
c5302c6f61
Change commentary for PowerPC Boolean vector contents.
...
No functional change intended.
llvm-svn: 180131
2013-04-23 18:49:44 +00:00
Akira Hatanaka
9bf012d3a9
[mips] Compare splat value with element size instead of calling isUIntN.
...
No intended changes in functionality.
llvm-svn: 180130
2013-04-23 18:09:42 +00:00
Owen Anderson
5a71acca02
DAGCombine should not aggressively fold SEXT(VSETCC(...)) into a wider VSETCC without first checking the target's vector boolean contents.
...
This exposed an issue with PowerPC AltiVec where it appears it was setting the wrong vector boolean contents. The included change
fixes the PowerPC tests, and was OK'd by Hal.
llvm-svn: 180129
2013-04-23 18:09:28 +00:00
Aaron Ballman
48ab17bb7b
Testing for _XCR_XFEATURE_ENABLED_MASK instead of a specific MSVC version because some MSVC 2010 SP1 installations do not have the _xgetbv intrinsic. Patch thanks to Serge Pavlov!
...
llvm-svn: 180125
2013-04-23 17:38:44 +00:00
Vincent Lejeune
3666f07489
R600: Use .AMDGPU.config section to emit stacksize
...
llvm-svn: 180124
2013-04-23 17:34:12 +00:00
Vincent Lejeune
e5ba5f1b14
R600: Add CF_END
...
llvm-svn: 180123
2013-04-23 17:34:00 +00:00
Nadav Rotem
1bfb7903e3
LoopVectorizer: Fix 15830. When scalarizing and unrolling stores make sure that the order in which the elements are scalarized is the same as the original order.
...
This fixes a miscompilation in FreeBSD's regex library.
llvm-svn: 180121
2013-04-23 17:12:42 +00:00
Jyotsna Verma
20903a7aba
Hexagon: Remove duplicate instructions to handle global/immediate values
...
for absolute/absolute-set addressing modes.
llvm-svn: 180120
2013-04-23 17:11:46 +00:00
Pekka Jaaskelainen
d8a8d1d02f
Call the potentially costly isAnnotatedParallel() only once.
...
Made the uniform write test's checks a bit stricter.
llvm-svn: 180119
2013-04-23 16:44:43 +00:00
Stephen Lin
d7dc8b56d3
Add some constraints to use of 'returned':
...
1) Disallow 'returned' on parameter that is also 'sret' (no sensible semantics, as far as I can tell).
2) Conservatively disallow tail calls through 'returned' parameters that also are 'zext' or 'sext' (for consistency with treatment of other zero-extending and sign-extending operations in tail call position detection...can be revised later to handle situations that can be determined to be safe).
This is a new attribute that is not yet used, so there is no impact.
llvm-svn: 180118
2013-04-23 16:31:56 +00:00
Rafael Espindola
534f0bf6c6
Write relocations in yaml2obj.
...
llvm-svn: 180115
2013-04-23 15:53:02 +00:00
Tom Stellard
0738305177
Wrap.h: Define wrap / unwrap function for ExecutionEngine
...
llvm-svn: 180112
2013-04-23 15:13:36 +00:00
Carlo Kok
fee4b6e7e0
c vs c++ mistake in header file typedef for AtomicRMW fix in rev 180100.
...
llvm-svn: 180104
2013-04-23 13:45:37 +00:00
Alexey Samsonov
ff8e66a66d
Fixup for r180094: properly use MSan interface functions
...
llvm-svn: 180103
2013-04-23 13:35:32 +00:00
Carlo Kok
76deb51f42
Expose IRBuilder::CreateAtomicRMW as LLVMBuildAtomicRMW in llvm-c.
...
llvm-svn: 180100
2013-04-23 13:21:19 +00:00
Reid Kleckner
e3c8c81c87
Un-revert the environ copy in ProgramTest after fixing it on OS X
...
This was r180041 and r180046, which was reverted in r180066.
Re-committing this should fix the dragonegg bootstrap, which I presume
needs LD_LIBRARY_PATH to be propagated to the child.
Tested on Linux, Windows, and Mac OS 10.6.
llvm-svn: 180099
2013-04-23 13:15:51 +00:00
Alexey Samsonov
142a2c6000
Tell MSan that memory initialized by libz is valid
...
llvm-svn: 180094
2013-04-23 12:17:46 +00:00
Rafael Espindola
f7c86d97a1
Move test from grep to FileCheck.
...
llvm-svn: 180092
2013-04-23 12:03:27 +00:00
Alexey Samsonov
cb820bd0a4
Use zlib to uncompress debug sections in DWARF parser.
...
This makes llvm-dwarfdump and llvm-symbolizer understand
debug info sections compressed by ld.gold linker.
llvm-svn: 180088
2013-04-23 10:17:34 +00:00
Hans Wennborg
119eb95d16
Add llvm_unreachable after fully covered switch to pacify GCC
...
llvm-svn: 180087
2013-04-23 10:12:16 +00:00
Alexey Samsonov
31d66490c8
Add more guards around zlib-dependent code
...
llvm-svn: 180084
2013-04-23 08:57:30 +00:00
Alexey Samsonov
30f0410c39
Add basic zlib support to LLVM. This would allow to use compression/uncompression in selected LLVM tools.
...
llvm-svn: 180083
2013-04-23 08:28:39 +00:00
Pekka Jaaskelainen
1492231ce9
Refuse to (even try to) vectorize loops which have uniform writes,
...
even if erroneously annotated with the parallel loop metadata.
Fixes Bug 15794:
"Loop Vectorizer: Crashes with the use of llvm.loop.parallel metadata"
llvm-svn: 180081
2013-04-23 08:08:51 +00:00
Tim Northover
58843a7431
AArch64: remove unnecessary check that RS is valid
...
AArch64 always demands a register-scavenger, so the pointer should never be
NULL. However, in the spirit of paranoia, we'll assert it before use just in
case.
llvm-svn: 180080
2013-04-23 06:55:15 +00:00
Manman Ren
8fd556f742
Struct-path aware TBAA: update getMostGenericTBAA
...
The tag is of type TBAANode when flag EnableStructPathTBAA is off.
Move implementation of MDNode::getMostGenericTBAA to TypeBasedAliasAnalysis.cpp
since it depends on how to interprete the MDNodes for scalar TBAA and
struct-path aware TBAA.
llvm-svn: 180068
2013-04-22 23:00:44 +00:00
Michael Gottesman
face3ce082
Revert "Add a missing reference on a std::vector<> out param"
...
Revert "[Support] Propagate the environment into the test child process"
This reverts commit r180046.
This reverts commit r180041.
These have broken buildbots for ~3 hours:
http://lab.llvm.org:8013/builders/clang-x86_64-darwin11-nobootstrap-RAincremental/builds/763
llvm-svn: 180066
2013-04-22 22:51:55 +00:00
Matt Arsenault
b7287bba9b
Remove unused DwarfSectionOffsetDirective string
...
The value isn't actually used, and setting it emits a COFF specific
directive.
llvm-svn: 180064
2013-04-22 22:49:11 +00:00
Eric Christopher
beec5d09da
Move C++ code out of the C headers and into either C++ headers
...
or the C++ files themselves. This enables people to use
just a C compiler to interoperate with LLVM.
llvm-svn: 180063
2013-04-22 22:47:22 +00:00
Chad Rosier
55758155b4
[ms-inline asm] Removed this unnecessary check. In the current implementation,
...
Disp will always be one of MCSymbolRefExpr or MCConstantExpr, and never NULL.
llvm-svn: 180059
2013-04-22 22:38:35 +00:00
Chad Rosier
6d8c79f647
Add test case for PR15779, which has previously been fixed.
...
llvm-svn: 180058
2013-04-22 22:30:01 +00:00
Chad Rosier
a83a69c04e
[ms-inline asm] Get the OpDecl and remove a redundant lookup.
...
Part of rdar://13663589
llvm-svn: 180057
2013-04-22 22:12:12 +00:00
Chad Rosier
92895762d6
[ms-inline asm] Add the OpDecl to the InlineAsmIdentifierInfo struct and in turn
...
the MCParsedAsmOperand.
Part of rdar://13663589
llvm-svn: 180054
2013-04-22 22:04:25 +00:00
Eli Bendersky
7306096ec3
Optimize MachineBasicBlock::getSymbol by caching the symbol. Since the symbol
...
name computation is expensive, this helps save about 25% of the time spent in
this function.
llvm-svn: 180049
2013-04-22 21:21:08 +00:00
Reid Kleckner
7a94b9d4da
Add a missing reference on a std::vector<> out param
...
Pointed out by Eli. The test passes for me either way, so I missed
this.
llvm-svn: 180046
2013-04-22 20:58:09 +00:00