1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
Commit Graph

59018 Commits

Author SHA1 Message Date
Hal Finkel
c18598b552 Initialize hasQPX in PPCSubtarget
This should have gone in with r173973.

llvm-svn: 173984
2013-01-30 22:43:44 +00:00
Bill Wendling
045f95da4a Remove redundant code.
It was creating a new AttrBuilder when we could just fill in the AttrBuilder
we're building.

llvm-svn: 173975
2013-01-30 21:22:59 +00:00
Hal Finkel
7969f87a01 Add definitions for the PPC a2q core marked as having QPX available
This is the first commit of a large series which will add support for the
QPX vector instruction set to the PowerPC backend. This instruction set is
used on the IBM Blue Gene/Q supercomputers.

llvm-svn: 173973
2013-01-30 21:17:42 +00:00
Eli Bendersky
128c58bab5 Clean up whitespace and indentation a bit
llvm-svn: 173960
2013-01-30 19:24:23 +00:00
Manman Ren
871181e2e0 Linker: correctly link in dbg.declare
Given source IR:
call void @llvm.dbg.declare(metadata !{i32* %argc.addr}, metadata !14), !dbg !15
we used to generate 
call void @llvm.dbg.declare(metadata !27, metadata !28), !dbg !29
!27 = metadata !{null}

With this patch, we will correctly generate
call void @llvm.dbg.declare(metadata !{i32* %argc.addr}, metadata !27), !dbg !28

Looking up %argc.addr in ValueMap will return null, since %argc.addr is already
correctly set up, we can use identity mapping.

llvm-svn: 173946
2013-01-30 17:42:15 +00:00
Eli Bendersky
54b69d95ac Add a special ARM trap encoding for NaCl.
More details in this thread: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130128/163783.html

Patch by JF Bastien

llvm-svn: 173943
2013-01-30 16:30:19 +00:00
Logan Chien
8155fc64e5 Add missing header and test cases for r173939.
llvm-svn: 173941
2013-01-30 15:48:50 +00:00
Logan Chien
88f66a1476 Override virtual function for ARM EH directives.
llvm-svn: 173939
2013-01-30 15:39:04 +00:00
Dmitri Gribenko
2eaa3b382c Move UTF conversion routines from clang/lib/Basic to llvm/lib/Support
This is required to use them in TableGen.

llvm-svn: 173923
2013-01-30 12:05:05 +00:00
Bill Wendling
67fe3298b1 Attempt to fix dragonegg. Use the number of slots to determine if the AttributeSet has attributes or not.
llvm-svn: 173902
2013-01-30 06:54:41 +00:00
Nadav Rotem
7b1c05a9b7 InstCombine: canonicalize sext-and --> select
sext-not-and --> select.

Patch by Muhammad Tauqir Ahmad.

llvm-svn: 173901
2013-01-30 06:35:22 +00:00
David Blaikie
23205ae0d0 Removing initializer for the field removed in r173887
llvm-svn: 173888
2013-01-30 03:04:07 +00:00
David Blaikie
db3dd167f9 Remove unused variable (introduced in r173884) to clear clang -Werror build
llvm-svn: 173887
2013-01-30 02:56:02 +00:00
Jack Carter
0d5645b2e3 Forgot to add new file to CMakeLists
llvm-svn: 173886
2013-01-30 02:32:36 +00:00
Jack Carter
7c25c2553c This patch implements runtime ARM specific
setting of ELF header e_flags.

Contributer: Jack Carter
 
llvm-svn: 173885
2013-01-30 02:24:33 +00:00
Jack Carter
9054213d30 This patch implements runtime Mips specific
setting of ELF header e_flags.

Contributer: Jack Carter
 
llvm-svn: 173884
2013-01-30 02:16:36 +00:00
Jack Carter
7cd7b1f749 This patch reworks how llvm targets set
and update ELF header e_flags.

Currently gathering information such as symbol, 
section and data is done by collecting it in an 
MCAssembler object. From MCAssembler and MCAsmLayout 
objects ELFObjectWriter::WriteObject() forms and 
streams out the ELF object file.

This patch just adds a few members to the MCAssember 
class to store and access the e_flag settings. It 
allows for runtime additions to the e_flag by 
assembler directives. The standalone assembler can 
get to MCAssembler from getParser().getStreamer().getAssembler().

This patch is the generic infrastructure and will be
followed by patches for ARM and Mips for their target 
specific use.

Contributer: Jack Carter
 
llvm-svn: 173882
2013-01-30 02:09:52 +00:00
Akira Hatanaka
553d261207 [mips] Lower EH_RETURN.
Patch by Sasa Stankovic.

llvm-svn: 173862
2013-01-30 00:26:49 +00:00
Renato Golin
c99da3a7f4 Adding simple cast cost to ARM
Changing ARMBaseTargetMachine to return ARMTargetLowering intead of
the generic one (similar to x86 code).

Tests showing which instructions were added to cast when necessary
or cost zero when not. Downcast to 16 bits are not lowered in NEON,
so costs are not there yet.

llvm-svn: 173849
2013-01-29 23:31:38 +00:00
Dmitri Gribenko
bbc618e0fa Remove unused variable (unused since r173839)
llvm-svn: 173847
2013-01-29 23:27:45 +00:00
Michael Gottesman
ab6ee5005b Made certain small functions in PtrState inlined.
llvm-svn: 173842
2013-01-29 22:29:59 +00:00
Michael J. Spencer
264c449666 [MC][COFF] Delay handling symbol aliases when writing
Fixes PR14447 and PR9034. Patch by Nico Rieck!

llvm-svn: 173839
2013-01-29 22:10:07 +00:00
Pekka Jaaskelainen
67cddcca8c LoopVectorize: convert TinyTripCountVectorThreshold constant
to a command line switch.

llvm-svn: 173837
2013-01-29 21:42:08 +00:00
Michael Gottesman
ab4288b56e Removed trailing comma in last element of enum declaration.
llvm-svn: 173836
2013-01-29 21:41:44 +00:00
Michael Gottesman
cbf143b3cd Moved S_Stop back to its previous position in the sequence order.
llvm-svn: 173834
2013-01-29 21:39:02 +00:00
Weiming Zhao
280e8fdbef Add a special handling case for untyped CopyFromReg node in GetCostForDef() of ScheduleDAGRRList
llvm-svn: 173833
2013-01-29 21:18:43 +00:00
Michael Gottesman
d28a7d5fc2 Fixed a few debug messages and some 80+ violations.
llvm-svn: 173832
2013-01-29 21:07:53 +00:00
Michael Gottesman
98e0318acb Added some periods to some comments and added an overload for operator<< for type Sequence so I can print out Sequences in debug statements.
llvm-svn: 173831
2013-01-29 21:07:51 +00:00
Michael Gottesman
1d2ca1ffd8 Changed DoesObjCBlockEscape => DoesRetainableObjPtrEscape so I can use it to perform escape analysis of other retainable object pointers in other locations.
llvm-svn: 173829
2013-01-29 21:00:52 +00:00
Bill Wendling
d6a0aeff10 Add a couple of accessor methods to get the kind and values of an attribute.
llvm-svn: 173828
2013-01-29 20:45:34 +00:00
Bill Wendling
06e3c96d61 s/Data/Kind/g. No functionality change.
llvm-svn: 173827
2013-01-29 20:37:10 +00:00
David Blaikie
168e35edd8 Support artificial parameters in function types.
Provides the functionality for Clang change r172911 - I just had this still
lying around.

llvm-svn: 173820
2013-01-29 19:35:24 +00:00
Jyotsna Verma
189807572e Use multiclass for post-increment store instructions.
llvm-svn: 173816
2013-01-29 18:42:41 +00:00
Jyotsna Verma
e8debd87f4 Add constant extender support for MInst type instructions.
llvm-svn: 173813
2013-01-29 18:18:50 +00:00
Evan Cheng
3d095b1549 Remove dead code.
llvm-svn: 173812
2013-01-29 18:08:22 +00:00
Edwin Vane
fafd787d1f Fixing warnings revealed by gcc release build
Fixed set-but-not-used warnings.

Reviewer: gribozavr
llvm-svn: 173810
2013-01-29 17:42:24 +00:00
Benjamin Kramer
5142e76f3a LoopVectorize: Clean up ValueMap a bit and avoid double lookups.
No intended functionality change.

llvm-svn: 173809
2013-01-29 17:31:33 +00:00
NAKAMURA Takumi
6f0f8e9c41 R600/AMDILPeepholeOptimizer.cpp: Tweak std::make_pair to satisfy C++11.
llvm-svn: 173807
2013-01-29 16:31:56 +00:00
NAKAMURA Takumi
f9f76dc502 AttributeSet::get(): Fix a valgrind error. It doesn't affect actual behavior, though.
Don't touch I->first on the end iterator, I == E!

llvm-svn: 173804
2013-01-29 15:18:16 +00:00
Hans Wennborg
4df1f32131 Fix typo in X86BaseInfo.h that I introduced in r157818.
llvm-svn: 173798
2013-01-29 14:05:57 +00:00
Timur Iskhodzhanov
8b40231d0a Hopefully fix the Windows build failure introduced in r173769
llvm-svn: 173781
2013-01-29 09:09:27 +00:00
Tim Northover
842599c977 Fix 64-bit atomic operations in Thumb mode.
The ARM and Thumb variants of LDREXD and STREXD have different constraints and
take different operands. Previously the code expanding atomic operations didn't
take this into account and asserted in Thumb mode.

llvm-svn: 173780
2013-01-29 09:06:13 +00:00
Craig Topper
a8c721bc88 Merge SSE and AVX shuffle instructions in the comment printer.
llvm-svn: 173777
2013-01-29 07:54:31 +00:00
Andrew Trick
c7578b11dd MIsched: cleanup code. Use isBoundaryNode().
llvm-svn: 173775
2013-01-29 06:26:35 +00:00
Michael Gottesman
2153efb5eb Fixed 2 more header comments...
llvm-svn: 173774
2013-01-29 05:07:18 +00:00
Michael Gottesman
e5970ea945 Fixed header comment.
llvm-svn: 173773
2013-01-29 05:05:17 +00:00
Michael Gottesman
28c4bb7fde Fixed some whitespace/80+ violations. Also added a space after a namespace declaration.
llvm-svn: 173772
2013-01-29 04:58:30 +00:00
Michael Gottesman
5dc197578c Added missing dashes from header declaration comment.
llvm-svn: 173770
2013-01-29 04:53:55 +00:00
Michael Gottesman
886be0c46c Juggled Debug.h from ObjCARC.h to only the including cpp files that
actually have DEBUG statements. Also changed raw_ostream in said header
to be a forward declaration (removing an include).

llvm-svn: 173769
2013-01-29 04:51:59 +00:00
Michael Gottesman
4a3c5c538f Sorted includes using utils/sort_includes.
llvm-svn: 173767
2013-01-29 04:20:52 +00:00