Bill Wendling
f319e9905f
Have 'addFnAttr' take the attribute enum value. Then have it build the attribute object and add it appropriately. No functionality change.
...
llvm-svn: 165595
2012-10-10 03:12:49 +00:00
Craig Topper
38b25bab29
Test case for r165480.
...
llvm-svn: 165594
2012-10-10 02:54:23 +00:00
Reed Kotler
0f2e44a1cb
Reorder some parts of the td file to by in alphabetical order
...
llvm-svn: 165590
2012-10-10 01:58:16 +00:00
Andrew Kaylor
10bc2b456a
Adding comments to clarify the reason for non-standard style in these files.
...
Patch committed on behalf of Kirill Uhanov
llvm-svn: 165589
2012-10-10 01:48:52 +00:00
Andrew Kaylor
b96a320a2e
Cosmetic changes
...
llvm-svn: 165588
2012-10-10 01:45:52 +00:00
Andrew Kaylor
3f31fa05d5
This patch adds new functions to the SectionRef and ObjectFile interfaces to determine whether or not a section is meant to be read-only. These functions will be used by the MCJIT RuntimeDyld to give hints to the memory manager during the object loading process in a future patch.
...
Patch by Ashok Thirumurthi.
llvm-svn: 165586
2012-10-10 01:41:33 +00:00
Akira Hatanaka
9c8dcfc73a
Implement MipsTargetLowering::CanLowerReturn.
...
Patch by Sasa Stankovic.
llvm-svn: 165585
2012-10-10 01:27:09 +00:00
Bob Wilson
8fd10ef0d6
Revert "Use a special path to place the .o files in."
...
This reverts commit 165428 in an attempt to get our buildbots going.
llvm-svn: 165574
2012-10-09 23:59:01 +00:00
Michael Liao
4aebf0ec3e
Add extra vim swap file pattern
...
llvm-svn: 165569
2012-10-09 23:48:34 +00:00
Evan Cheng
3903e1be01
When expanding atomic load arith instructions, do not lose target flags. rdar://12453106
...
llvm-svn: 165568
2012-10-09 23:48:33 +00:00
Andrew Trick
780fae8cd6
misched: Add computeInstrLatency to TargetSchedModel.
...
llvm-svn: 165566
2012-10-09 23:44:32 +00:00
Andrew Trick
3b8085db78
misched: Doxument the TargetSchedule API.
...
llvm-svn: 165565
2012-10-09 23:44:29 +00:00
Andrew Trick
cfcf5202a1
misched: Allow flags to disable hasInstrSchedModel/hasInstrItineraries for external users of TargetSchedule.
...
llvm-svn: 165564
2012-10-09 23:44:26 +00:00
Andrew Trick
caf1dc7867
misched: Remove LoopDependencies heuristic.
...
This wasn't contributing anything significant to postRA heuristics except compile time (by my measurements) and will be replaced by a more general heuristic for cross-region dependencies within the scheduler itself.
llvm-svn: 165563
2012-10-09 23:44:23 +00:00
Bill Wendling
80193d4bb0
Use the attribute builder to add attributes to call/invoke instruction. No functionality change intended.
...
llvm-svn: 165562
2012-10-09 23:40:31 +00:00
Jack Carter
543fdf8544
Initial assembler implementation of Mips load address macro
...
This patch provides initial implementation of load address
macro instruction for Mips. We have implemented two kinds
of expansions with their variations depending on the size
of immediate operand:
1) load address with immediate value directly:
* la d,j => addiu d,$zero,j (for -32768 <= j <= 65535)
* la d,j => lui d,hi16(j)
ori d,d,lo16(j) (for any other 32 bit value of j)
2) load load address with register offset value
* la d,j(s) => addiu d,s,j (for -32768 <= j <= 65535)
* la d,j(s) => lui d,hi16(j) (for any other 32 bit value of j)
ori d,d,lo16(j)
addu d,d,s
This patch does not cover the case when the address is loaded
from the value of the label or function.
Contributer: Vladimir Medic
llvm-svn: 165561
2012-10-09 23:29:45 +00:00
Douglas Gregor
79258ca2cc
Add count() method to MapVector
...
llvm-svn: 165559
2012-10-09 23:02:47 +00:00
Micah Villmow
7edfe5f6b2
Add in some interfaces that will allow easier access to the pointer address space.
...
llvm-svn: 165554
2012-10-09 22:27:29 +00:00
Bill Wendling
ff758fbd45
Use the attribute enums to query if a function has an attribute.
...
llvm-svn: 165551
2012-10-09 21:49:51 +00:00
Bill Wendling
8ccd6ca199
Use the attribute enums to query if a parameter has an attribute.
...
llvm-svn: 165550
2012-10-09 21:38:14 +00:00
Bill Wendling
b3723341f3
Revert r165547 to fix build.
...
llvm-svn: 165548
2012-10-09 20:56:48 +00:00
Bill Wendling
5abc0ef174
Use a single location for calculating the alignments.
...
llvm-svn: 165547
2012-10-09 20:55:16 +00:00
Sean Silva
2f7bf41091
tblgen: Rename handleDependencies -> createDependencyFile
...
llvm-svn: 165544
2012-10-09 20:39:28 +00:00
Bill Wendling
a5661eb300
Remove this now unused variable macro.
...
llvm-svn: 165543
2012-10-09 20:35:11 +00:00
Sean Silva
0cd3536505
tblgen: Move dependency file output to a separate function.
...
This keeps it out of the main flow of TableGenMain.
llvm-svn: 165542
2012-10-09 20:29:03 +00:00
Bill Wendling
4caad41f1e
Use appropriate method calls to get the alignment value.
...
llvm-svn: 165541
2012-10-09 20:28:54 +00:00
Chad Rosier
126d0b8c4d
Whitespace.
...
llvm-svn: 165540
2012-10-09 20:15:02 +00:00
Bill Wendling
9864a6557e
Inline the checks for mutually exclusive attributes since they're used in only one module.
...
llvm-svn: 165539
2012-10-09 20:11:19 +00:00
Rafael Espindola
be5613c0a7
Enable response files in all tools. Patch by Liu, Yaxun (Sam). I have simplified
...
the test.
llvm-svn: 165535
2012-10-09 19:52:10 +00:00
Bill Wendling
7c04e04a75
Move the 'FunctionOnly' attributes thingy inside of the Attributes class.
...
llvm-svn: 165530
2012-10-09 19:01:18 +00:00
Douglas Gregor
ab88e86dd0
Not everyone uses C++11, apparently
...
llvm-svn: 165517
2012-10-09 17:51:56 +00:00
Douglas Gregor
62692ce7f3
Allow MapVector clients to specify the map and vector types, and add a
...
clear() method.
llvm-svn: 165514
2012-10-09 17:49:42 +00:00
Michael Ilseman
7eaf29c61e
More descriptive, doxygen-ed comments
...
llvm-svn: 165512
2012-10-09 17:05:59 +00:00
Sean Silva
94c7604832
tblgen: Remove pointless method call.
...
llvm-svn: 165511
2012-10-09 17:03:11 +00:00
Michael Ilseman
c93cffb590
New EarlyCSE tests for CSE-ing across commutativity.
...
llvm-svn: 165510
2012-10-09 16:58:13 +00:00
Michael Ilseman
336cb79fdf
Update EarlyCSE's SimpleValues to use Hashing.h for their hashes. Expanded the hashing and equality to allow for equality modulo commutativity for binary ops, and comparisons with swapping of predicates.
...
llvm-svn: 165509
2012-10-09 16:57:38 +00:00
Michael Ilseman
f876de06d2
New value_op_iterator for User. This allows other code to iterate over the User's operands directly as values, which can be convenient.
...
llvm-svn: 165508
2012-10-09 16:55:14 +00:00
David Chisnall
3705125cc8
Improvements to MIPS64 assembler:
...
- Teach it about dadd[i] instructions and move pseudo-instruction
- Make it parse the register names correctly (for N32 / N64)
llvm-svn: 165506
2012-10-09 16:27:43 +00:00
Micah Villmow
89021e4740
Add in the first step of the multiple pointer support. This adds in support to the data layout for specifying a per address space pointer size.
...
The next step is to update the optimizers to allow them to optimize the different address spaces with this information.
llvm-svn: 165505
2012-10-09 16:06:12 +00:00
Alexey Samsonov
2747e22051
Fixup for r165490: Use DenseMap instead of std::map. Simplify the loop in CollectFunctionDIs.
...
llvm-svn: 165498
2012-10-09 10:34:52 +00:00
Bill Wendling
908126a745
Move the 'ParameterOnly' variable inside of the Attributes class and make it a method.
...
llvm-svn: 165497
2012-10-09 09:51:10 +00:00
Bill Wendling
217c9b1916
Remove the now dead VarArgsIncompatible variable.
...
llvm-svn: 165496
2012-10-09 09:33:01 +00:00
Bill Wendling
1c1b324ccf
Use the enum value of the attributes when removing them from the attributes builder.
...
llvm-svn: 165495
2012-10-09 09:17:28 +00:00
Bill Wendling
93f70b78fd
Use the enum value of the attributes when adding them to the attributes builder.
...
llvm-svn: 165494
2012-10-09 09:11:20 +00:00
Alexey Samsonov
3b861ec989
Fix PR14016.
...
DeadArgumentElimination pass can replace one LLVM function with another,
invalidating a pointer stored in debug info metadata entry for this function.
To fix this, we collect debug info descriptors for functions before
running a DeadArgumentElimination pass and "patch" pointers in metadata nodes
if we replace a function.
llvm-svn: 165490
2012-10-09 08:13:15 +00:00
Bill Wendling
c9b22d735a
Create enums for the different attributes.
...
We use the enums to query whether an Attributes object has that attribute. The
opaque layer is responsible for knowing where that specific attribute is stored.
llvm-svn: 165488
2012-10-09 07:45:08 +00:00
Bill Wendling
bcd425b094
Remove some dead methods.
...
llvm-svn: 165485
2012-10-09 05:54:39 +00:00
Bill Wendling
a1d2b3ee45
Remove ifdef'd code.
...
llvm-svn: 165484
2012-10-09 05:36:15 +00:00
Craig Topper
f1c2016075
Separate AVXCC and SSECC printing for cmpps/pd/ss/sd and add masking before the switch statement. This keeps the unreachable default case from being hit if the instruction was created with an intrinsic with too large of an immediate.
...
llvm-svn: 165483
2012-10-09 05:26:13 +00:00
NAKAMURA Takumi
be94b1c37e
Revert r117093, "test/Makefile: Force lit -j1 on Cygwin."
...
lit -jN works on cygwin in most cases, but still sometimes I can see stalls with iterative run on the buildbot.
llvm-svn: 165482
2012-10-09 05:07:18 +00:00