NAKAMURA Takumi
4784df7161
Prune more RALinScan. RALinScan was also here!
...
llvm-svn: 144487
2011-11-13 01:33:10 +00:00
Jakob Stoklund Olesen
f61a6fe221
Delete the old spilling framework from LiveIntervalAnalysis.
...
This is dead code, all register allocators use InlineSpiller.
llvm-svn: 144478
2011-11-12 23:57:05 +00:00
Jakob Stoklund Olesen
e7e50e6f45
Delete the linear scan register allocator.
...
RegAllocGreedy has been the default for six months now.
Deleting RegAllocLinearScan makes it possible to also delete
VirtRegRewriter and clean up the spiller code.
llvm-svn: 144475
2011-11-12 22:39:45 +00:00
Eli Friedman
9d448e4a42
Don't try to form pre/post-indexed loads/stores until after LegalizeDAG runs. Fixes PR11029.
...
llvm-svn: 144438
2011-11-12 00:35:34 +00:00
Nicolas Geoffray
26c328d734
Add a custom safepoint method, in order for language implementers to decide which machine instruction gets to be a safepoint.
...
llvm-svn: 144399
2011-11-11 18:32:52 +00:00
Daniel Dunbar
eb3179e57a
Fix typo.
...
llvm-svn: 144334
2011-11-10 23:33:18 +00:00
Owen Anderson
c5c49466a1
Add additional checking to ensure that MachineMemOperands are never set to null, which can happen in weird circumstances where target intrinsic hooks are implemented incorrectly.
...
llvm-svn: 144303
2011-11-10 19:25:09 +00:00
Eric Christopher
0c7c931dbf
Fix typo.
...
llvm-svn: 144198
2011-11-09 18:53:37 +00:00
Eric Christopher
5223a57533
Remove the pubnames section, no one consumes it.
...
llvm-svn: 144169
2011-11-09 05:24:07 +00:00
Eli Friedman
b3c8febd1e
Enhance verifyLoop so that it can reliably verify that every block in a loop is reachable from the loop header.
...
llvm-svn: 144166
2011-11-09 04:16:01 +00:00
Pete Cooper
82cd9e81fc
Added invariant field to the DAG.getLoad method and changed all calls.
...
When this field is true it means that the load is from constant (runt-time or compile-time) and so can be hoisted from loops or moved around other memory accesses
llvm-svn: 144100
2011-11-08 18:42:53 +00:00
Richard Osborne
561fac4d4e
Don't introduce custom nodes after legalization in TargetLowering::BuildSDIV()
...
and TargetLowering::BuildUDIV(). Fixes PR11283
llvm-svn: 143964
2011-11-07 17:09:05 +00:00
Eric Christopher
4996c70034
Add the support code to enable the dwarf accelerator tables. Upcoming patches
...
to fix the types section (all types, not just global types), and testcases.
The code to do the final emission is disabled by default.
llvm-svn: 143923
2011-11-07 09:24:32 +00:00
Craig Topper
a6d409d543
Add AVX2 variable shift instructions and intrinsics.
...
llvm-svn: 143915
2011-11-07 08:26:24 +00:00
Craig Topper
ff39be0afc
Add AVX2 VPMOVMASK instructions and intrinsics.
...
llvm-svn: 143904
2011-11-07 03:20:35 +00:00
Craig Topper
e122dcbf4a
Add AVX2 VEXTRACTI128 and VINSERTI128 instructions. Fix VPERM2I128 to be qualified with HasAVX2 instead of HasAVX. Mark VINSERTF128 and VEXTRACTF128 as never having side effects.
...
llvm-svn: 143902
2011-11-07 02:00:04 +00:00
Craig Topper
620db14aac
Fix accidental edit to __builtin_ia32_vperm2f128_ps256's name
...
llvm-svn: 143901
2011-11-07 00:54:28 +00:00
Craig Topper
f01f1b5cb9
More AVX2 instructions and their intrinsics.
...
llvm-svn: 143895
2011-11-06 23:04:08 +00:00
Benjamin Kramer
20baffb257
Replace (Lower|Upper)caseString in favor of StringRef's newest methods.
...
llvm-svn: 143891
2011-11-06 20:37:06 +00:00
Daniel Dunbar
3fa528d67c
ADT/StringRef: Add ::lower() and ::upper() methods.
...
llvm-svn: 143880
2011-11-06 18:04:43 +00:00
Craig Topper
05d1cb98e7
Add more AVX2 instructions and intrinsics.
...
llvm-svn: 143861
2011-11-06 06:12:20 +00:00
Benjamin Kramer
c74798d5cf
Add an option to pad an uleb128 to MCObjectWriter and remove the uleb128 encoding from the DWARF asm printer.
...
As a side effect we now print dwarf ulebs with .ascii directives.
llvm-svn: 143809
2011-11-05 11:52:44 +00:00
Benjamin Kramer
635969ca7f
Fix pasto.
...
llvm-svn: 143802
2011-11-05 09:45:17 +00:00
Benjamin Kramer
f3da529028
Add more PRI.64 macros for MSVC and use them throughout the codebase.
...
llvm-svn: 143799
2011-11-05 08:57:40 +00:00
Daniel Dunbar
4a9c6426ff
build/cmake: Use tblgen macro directly instead of llvm_tablegen, which just
...
added a layer of indirection with no value (not even conciseness).
llvm-svn: 143727
2011-11-04 19:04:23 +00:00
Eli Friedman
5e00f6e16f
Add missing includes/decls.
...
llvm-svn: 143722
2011-11-04 18:45:34 +00:00
Eli Friedman
97540c3a4a
Add missing includes/class declaration.
...
llvm-svn: 143718
2011-11-04 18:30:30 +00:00
Eli Friedman
c599df75f2
Add missing forward declarations.
...
llvm-svn: 143717
2011-11-04 18:29:09 +00:00
Eli Friedman
2bcf264ec7
Add a couple missing includes; found while analyzing LLVM headers.
...
llvm-svn: 143716
2011-11-04 18:19:43 +00:00
Eli Friedman
88b24261f6
Delete names for unused parameters in inline function definitions in headers, so LLVM users can compile with -Wunused-parameter. PR11257; based on patch by Kevin Harris.
...
llvm-svn: 143715
2011-11-04 18:11:56 +00:00
Chad Rosier
e502a88b50
Remove declarations for functions that don't exist (and never have).
...
Patch by Anders Waldenborg <anders@0x63.nu>.
llvm-svn: 143705
2011-11-04 17:07:11 +00:00
Craig Topper
caba032f48
Add intrinsics for X86 vcvtps2ph and vcvtph2ps instructions
...
llvm-svn: 143683
2011-11-04 06:59:49 +00:00
Craig Topper
0e7cbbabea
Add new X86 AVX2 VBROADCAST instructions.
...
llvm-svn: 143612
2011-11-03 07:35:53 +00:00
Chad Rosier
9589872af9
Remove some cruft from the BitcodeWriter, while still maintaining backward
...
compatibility in the BitcodeReader.
llvm-svn: 143598
2011-11-03 00:14:01 +00:00
Michael J. Spencer
1085ce6d45
object: Add operator < for SymbolRef and SectionRef.
...
llvm-svn: 143563
2011-11-02 19:33:41 +00:00
Michael J. Spencer
e03ea9cd71
Object/Archive: Add symbol table iteration.
...
llvm-svn: 143561
2011-11-02 19:33:12 +00:00
Chandler Carruth
ae4e800c5b
Begin collecting some of the statistics for block placement discussed on
...
the mailing list. Suggestions for other statistics to collect would be
awesome. =]
Currently these are implemented as a separate pass guarded by a separate
flag. I'm not thrilled by that, but I wanted to be able to collect the
statistics for the old code placement as well as the new in order to
have a point of comparison. I'm planning on folding them into the single
pass if / when there is only one pass of interest.
llvm-svn: 143537
2011-11-02 07:17:12 +00:00
Craig Topper
a47b05c7f3
More AVX2 instructions and intrinsics.
...
llvm-svn: 143536
2011-11-02 06:54:17 +00:00
Craig Topper
682b850602
Add a bunch more X86 AVX2 instructions and their corresponding intrinsics.
...
llvm-svn: 143529
2011-11-02 04:42:13 +00:00
Kevin Enderby
6469fc275a
First part of support for generating dwarf for assembly source files with the
...
-g flag. In this part we generate the .file for the source being assembled and
the .loc's for the assembled instructions.
The next part will be to generate the dwarf Compile Unit DIE and a dwarf
subprogram DIE for each non-temporary label.
Once the next part is done test cases will be added. rdar://9275556
llvm-svn: 143509
2011-11-01 22:27:22 +00:00
Sebastian Pop
94441fbad7
rename getHostTriple into getDefaultTargetTriple
...
llvm-svn: 143502
2011-11-01 21:32:20 +00:00
Sebastian Pop
ec2fb226d8
rename LLVM_HOSTTRIPLE into LLVM_DEFAULT_TARGET_TRIPLE
...
llvm-svn: 143501
2011-11-01 21:31:44 +00:00
Daniel Dunbar
ca5524b00b
Support/Compiler: Add LLVM_EXTENSION for use where we want to hide pedantic diags.
...
llvm-svn: 143468
2011-11-01 17:46:12 +00:00
Craig Topper
fec80c6ad2
Fix operand type for x86 pmadd_ub_sw intrinsic.
...
llvm-svn: 143455
2011-11-01 07:25:22 +00:00
Eli Friedman
39df70c33a
Remove a couple unused methods. PR11201.
...
llvm-svn: 143452
2011-11-01 05:11:01 +00:00
Devang Patel
f4af8c65aa
Add utility to append a function to the list of global constructors.
...
Patch by Kostya Serebryany.
llvm-svn: 143405
2011-10-31 23:58:51 +00:00
Craig Topper
9821e75e64
Fix operand type for int_x86_ssse3_phadd_sw_128 intrinsic
...
llvm-svn: 143336
2011-10-31 07:16:37 +00:00
Craig Topper
cfcfdf2aab
Begin adding AVX2 instructions. No selection support yet other than intrinsics.
...
llvm-svn: 143331
2011-10-31 02:15:10 +00:00
Craig Topper
228d9131aa
Add intrinsics and feature flag for read/write FS/GS base instructions. Also add AVX2 feature flag.
...
llvm-svn: 143319
2011-10-30 19:57:21 +00:00
Craig Topper
27f8c6ee2c
Mark X86 pcmpeq b/w/d intrinsics as being Commutative. pcmpeqq is already marked as Commutative.
...
llvm-svn: 143317
2011-10-30 18:33:35 +00:00