1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
Commit Graph

28682 Commits

Author SHA1 Message Date
Reid Spencer
0de0baf365 Changes to parameter attributes syntax.
llvm-svn: 32918
2007-01-05 17:40:40 +00:00
Reid Spencer
3495245ed0 Globals are not being renamed any more.
llvm-svn: 32917
2007-01-05 17:39:54 +00:00
Reid Spencer
ef31b4b173 This test case has been translated to 2.0 assembly so don't run
llvm-upgrade on it.

llvm-svn: 32916
2007-01-05 17:39:07 +00:00
Reid Spencer
a7f82d3210 Fix this to check for the correct error message.
llvm-svn: 32915
2007-01-05 17:37:59 +00:00
Reid Spencer
1472514984 This tests for something that will become illegal soon. The test/Feature
suite has a test for renaming of global variables.

llvm-svn: 32914
2007-01-05 17:36:59 +00:00
Reid Spencer
121d795195 Beef up this test case a little by introducing a global variable name
conflict after upgrade resulting from collapsed type planes. The test now
checks to make sure llvm-upgrade produces appropriate warning messages.

llvm-svn: 32913
2007-01-05 17:35:05 +00:00
Reid Spencer
450624cc8a Make this test that we can drop the implementation keyword for llvm-as.
llvm-upgrade is irrelevant for this test case.

llvm-svn: 32912
2007-01-05 17:29:41 +00:00
Reid Spencer
25f6be8634 Fix the test case for the change in parameter attribute syntax. The @ is
no longer needed and the @(...) syntax has been dropped in favor of a
simple space separated list of attribute names.

llvm-svn: 32911
2007-01-05 17:26:04 +00:00
Reid Spencer
845f216f53 For PR1077:
Split this test case into three cases. globalredefinition.ll just tests
that a global can be forward referenced. globalredefinition2.ll tests
that llvm-upgrade will warn about renaming duplicate global variables.
globalredefinition3.ll tests that llvm-as will generate an error on
duplicate global variables. This last test is currently XFAIL because
the restriction is not implemented yet.

llvm-svn: 32910
2007-01-05 17:25:12 +00:00
Reid Spencer
8453db2776 For PR1077:
Global variable definitions with the same name and same type are no longer
valid so don't attempt to test for this "feature".

llvm-svn: 32909
2007-01-05 17:22:13 +00:00
Reid Spencer
a8a4cdc2cb Regenerate
llvm-svn: 32908
2007-01-05 17:20:02 +00:00
Reid Spencer
b5198c9e06 Adjust to new header file name.
llvm-svn: 32907
2007-01-05 17:19:32 +00:00
Reid Spencer
e1e9aa99ae Major update of llvm-upgrade:
1. Completely revise the type system so that types are handled as const
   objects and not created multiple times, cloned, or otherwise copied.
   This gets around memory issues, saves memory, and also emulates LLVM's
   no-two-types-of-the-same-shape-created semantics.
2. Adjust the handling of global names. Basically, we cannot rename them
   for a variety of reasons: linking, forward references, etc.
3. Detect global names that have name conflicts as the result of collapsed
   type planes or redefinitions that llvm-as no longer accepts. These will
   produce warnings on stderr and one of the globals will be renamed.
4. Rename ParserInternals.h as UpgradeInternals.h so it doesn't conflict
   in the debugger with ParserInternals.h from lib/AsmParser.
5. Move the guts of the TypeInfo class into the grammar so we aren't
   implementing large functions in a header file. This also helps with
   debugging a bit.

llvm-svn: 32906
2007-01-05 17:18:58 +00:00
Reid Spencer
a6f1f11d07 Regenerate.
llvm-svn: 32905
2007-01-05 17:07:23 +00:00
Reid Spencer
4f14887126 Change the syntax for parameter attributes:
1. The @ sign is no longer necessary.
2. We now support "function attributes" as parameter attribute 0.
3. Instead of locating the return type attributes after the type of a
   function result, they are now located after the function header's
   closing paranthesis and before any alignment or section options.
4. The way has been prepared for a new "noreturn" function attribute but
   there is no support for recognizing it in the lexer nor doing anything
   with it if it does get set.
5. The FunctionType::getParamAttrsText method now has support for
   returning multiple attributes. This required a change in its interface.

I'm unhappy that this change leads to 6 new shift/reduce conflicts, but
in each case bison's decision to choose the shift is correct so there
shouldn't be any damage from these conflicts.

llvm-svn: 32904
2007-01-05 17:06:19 +00:00
Reid Spencer
14db5be69c Give the assembler some input.
llvm-svn: 32903
2007-01-05 16:45:06 +00:00
Evan Cheng
c273c9c830 Typo
llvm-svn: 32902
2007-01-05 08:32:24 +00:00
Evan Cheng
818d565b40 Add a test case for SSE fcopysign using SSE bitwise operations.
llvm-svn: 32901
2007-01-05 08:12:59 +00:00
Evan Cheng
bcf3d2bd15 With SSE2, expand FCOPYSIGN to a series of SSE bitwise operations.
llvm-svn: 32900
2007-01-05 07:55:56 +00:00
Chris Lattner
6cef95214b Implement InstCombine/vec_shuffle.ll:%test7, simplifying shuffles with
undef operands.

llvm-svn: 32899
2007-01-05 07:36:08 +00:00
Chris Lattner
68c36bf43f new test
llvm-svn: 32898
2007-01-05 07:35:24 +00:00
Chris Lattner
2202e966ab manually upgrade this testcase
llvm-svn: 32897
2007-01-05 07:34:41 +00:00
Chris Lattner
79238a345b fold things like a^b != c^a -> b != c. This implements InstCombine/xor.ll:test27
llvm-svn: 32893
2007-01-05 03:04:57 +00:00
Chris Lattner
e423dc395b new testcase
llvm-svn: 32892
2007-01-05 03:03:51 +00:00
Chris Lattner
6cd25f5e1d llvm upgrade doesn't accept 'define'
llvm-svn: 32891
2007-01-05 03:03:27 +00:00
Chris Lattner
f02fdf92a2 Compile X + ~X to -1. This implements Instcombine/add.ll:test34
llvm-svn: 32890
2007-01-05 02:17:46 +00:00
Chris Lattner
9075cdd065 new testcase
llvm-svn: 32889
2007-01-05 02:16:36 +00:00
Evan Cheng
8d09e52569 GEP subscript is interpreted as a signed value.
llvm-svn: 32888
2007-01-05 01:46:20 +00:00
Reid Spencer
2ca3b609dc Correct the documentation for function declarations. They can have dllimport
or extern_weak linkage as well as "externally visible".

llvm-svn: 32887
2007-01-05 00:59:10 +00:00
Chris Lattner
3f2bfb3c39 add missing flags
llvm-svn: 32885
2007-01-04 23:18:14 +00:00
Chris Lattner
45c7c69c77 fix PowerPC/2007-01-04-ArgExtension.ll, a bug handling K&R prototypes with
the recent signless changes.

llvm-svn: 32884
2007-01-04 22:22:37 +00:00
Chris Lattner
627e21e77b new testcase
llvm-svn: 32883
2007-01-04 22:22:07 +00:00
Chris Lattner
fdc695d04b Fix broken links, reported by Baptiste Lepilleur
llvm-svn: 32882
2007-01-04 22:01:45 +00:00
Evan Cheng
7674a71585 Expand fcopysign to a series of bitwise of operations when it's profitable to
do so.

llvm-svn: 32881
2007-01-04 21:56:39 +00:00
Chris Lattner
6ef6a513f8 regenerate
llvm-svn: 32880
2007-01-04 18:46:42 +00:00
Chris Lattner
b3c4e9aa67 If we hit a parse error, emit something bad to the output stream. This ensures that
llvm-upgrade < foo | llvm-as | llvm-dis

will fail if llvm-upgrade fails.

llvm-svn: 32879
2007-01-04 18:45:51 +00:00
Reid Spencer
98fb447ebe Document this tool as experimental and list its deficiencies.
llvm-svn: 32878
2007-01-04 17:55:11 +00:00
Chris Lattner
b0d835856b remove the 'protected' workaround now that we don't care about gcc 2.95 anymore.
Reid already did this for FunctionType, this just cleans the rest up.

llvm-svn: 32877
2007-01-04 17:50:42 +00:00
Chris Lattner
309a901eb3 remove xfailed test that depends on obsolete argument to lli
llvm-svn: 32876
2007-01-04 17:47:42 +00:00
Reid Spencer
2890d2f61a Remove a manual renaming of a variable that was introduced before
llvm-upgrade could properly handle collapsed type planes.

llvm-svn: 32875
2007-01-04 16:46:46 +00:00
Reid Spencer
70f0dbeea5 Clean up usage of "unsigned" and "signed" in the documentation to indicate
only that specific instructions regard their operands as signed and
unsigned not that the operands *are* signed or unsigned.

llvm-svn: 32874
2007-01-04 16:43:23 +00:00
Lauro Ramos Venancio
8284722e41 Add test for constructor and destructor sections.
llvm-svn: 32873
2007-01-04 14:41:33 +00:00
Lauro Ramos Venancio
86c825514f Add extload(i1) test.
llvm-svn: 32872
2007-01-04 14:27:21 +00:00
Lauro Ramos Venancio
c7f5caf1e7 Add test for FCOPYSIGN.
llvm-svn: 32871
2007-01-04 14:24:32 +00:00
Lauro Ramos Venancio
078b85bdaa Expand SELECT (f32/f64) and FCOPYSIGN (f32/f64).
llvm-svn: 32870
2007-01-04 14:01:38 +00:00
Bill Wendling
6568e0fb01 Removed reference to "cnull" because typical users shouldn't need to use
it.

llvm-svn: 32869
2007-01-04 08:38:04 +00:00
Chris Lattner
7355282e63 ding dong llvm-gcc3 is dead
llvm-svn: 32868
2007-01-04 07:08:27 +00:00
Chris Lattner
1fc9298de2 gcc 4.1.1 on amd64 is broken
llvm-svn: 32867
2007-01-04 07:06:05 +00:00
Reid Spencer
dd9d393e32 Death to useless bitcast instructions!
llvm-svn: 32866
2007-01-04 05:23:51 +00:00
Reid Spencer
4b18100144 Do not allow packed types for icmp and fcmp instructions.
llvm-svn: 32865
2007-01-04 05:22:18 +00:00