1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
Commit Graph

51115 Commits

Author SHA1 Message Date
Daniel Dunbar
aace3b9577 llvm-mc: Add const to EmitZeroFill section argument.
llvm-svn: 80341
2009-08-28 05:48:22 +00:00
Daniel Dunbar
7cf576d72f llvm-mc: Fix thinko in emitting values.
llvm-svn: 80340
2009-08-28 05:48:10 +00:00
Daniel Dunbar
300b88539d Add MathExtras.h OffsetToAlignment, like RoundUpToAlignment but returns the
offset to the next aligned integer.

llvm-svn: 80339
2009-08-28 05:48:04 +00:00
Daniel Dunbar
1b35869d3d Fix -Asserts warning.
llvm-svn: 80338
2009-08-28 05:47:56 +00:00
Chris Lattner
4dbe7896a5 finish a half formed thought :)
llvm-svn: 80334
2009-08-28 04:48:54 +00:00
Daniel Dunbar
2c92414183 Another NO_RUNTIME_LIBRARIES tweak...
llvm-svn: 80331
2009-08-28 03:06:28 +00:00
Daniel Dunbar
8d3f3f69f2 Tweak NO_RUNTIME_LIBS.
llvm-svn: 80330
2009-08-28 02:20:39 +00:00
Chris Lattner
04c6dc8fa5 Mark Andersen's as experimental.
llvm-svn: 80328
2009-08-28 00:45:47 +00:00
Chris Lattner
f37893e7a1 Fix PR3913, patch by Jakub Staszak!
llvm-svn: 80327
2009-08-28 00:43:14 +00:00
Evan Cheng
2d5d3700e9 v4, v5 does not support sxtb / sxth.
llvm-svn: 80322
2009-08-28 00:31:43 +00:00
Bob Wilson
597a55fde3 Disable optional bindings for Apple-style builds.
llvm-svn: 80319
2009-08-28 00:21:13 +00:00
Bob Wilson
dd611ca434 Revert 76080. This broke some powerpc cross compiles.
It also makes the llvmCore build dependent on whatever version of llvm-gcc
happens to be installed on the build machine.

llvm-svn: 80316
2009-08-28 00:10:15 +00:00
Daniel Dunbar
f0714ea058 Revert r80305, I forgot a dependent change.
--- Reverse-merging r80305 into '.':
U    tools/llvm-mc/AsmParser.cpp

llvm-svn: 80309
2009-08-27 23:58:10 +00:00
Devang Patel
c1fe40a1b3 Closure is a very generic name. Use AppleBlock instead.
llvm-svn: 80307
2009-08-27 23:51:51 +00:00
Daniel Dunbar
2c48439750 llvm-mc: Unique sections in .zerofill.
llvm-svn: 80305
2009-08-27 23:45:06 +00:00
Gabor Greif
0d4f085232 eliminate all 80-col violations that I have introduced in my recent checkins (and some others more)
llvm-svn: 80304
2009-08-27 23:44:33 +00:00
Daniel Dunbar
b06129b062 Don't build runtime libraries in an Apple style build.
llvm-svn: 80303
2009-08-27 23:43:28 +00:00
Bruno Cardoso Lopes
d4c8e64367 Revert 80278 for now, it caused a lot of MIPS tests to fail
llvm-svn: 80280
2009-08-27 19:57:56 +00:00
Bruno Cardoso Lopes
3073478a39 Revamp our friend Mips :)
Add MO flags to simplify the printing of relocations.
Remove the support for printing large code model relocs (which
aren't supported anyway).

llvm-svn: 80278
2009-08-27 19:40:40 +00:00
Dan Gohman
457e656c16 Don't mark CMOV_GR8 as two-address, or commutable, since it's a pseudo.
llvm-svn: 80271
2009-08-27 18:16:24 +00:00
Dan Gohman
3df56c2002 Adjust the MachineBasicBlock verifier rules to be more
tolerant of blocks that end with "unreachable".

llvm-svn: 80270
2009-08-27 18:14:26 +00:00
Eric Christopher
19db6e3a81 Add FIXME for when we support more specific XMM registers.
llvm-svn: 80269
2009-08-27 18:08:16 +00:00
Eric Christopher
2e0a916cbe Nuke trailing whitespace.
llvm-svn: 80268
2009-08-27 18:07:15 +00:00
Dan Gohman
335b36bf14 Use stripPointerCasts instead of doing the same manually.
llvm-svn: 80267
2009-08-27 18:02:03 +00:00
Dan Gohman
69ced456fa Minor code simplification.
llvm-svn: 80266
2009-08-27 17:59:08 +00:00
Dan Gohman
fd3cfaae35 Teach getUnderlyingObject and skipPointerCasts about GlobalAliases.
llvm-svn: 80265
2009-08-27 17:55:13 +00:00
Dan Gohman
ebfea6a655 Be somewhat more consistent about const qualifiers.
llvm-svn: 80264
2009-08-27 17:54:15 +00:00
Dan Gohman
a318ec22f2 Global Aliases are not identifiable objects.
llvm-svn: 80263
2009-08-27 17:52:56 +00:00
Dan Gohman
d3d03c966f Handle TargetData with const.
llvm-svn: 80262
2009-08-27 17:51:25 +00:00
Dan Gohman
e4b0f12a19 Strip trailing whitespace from blank lines.
llvm-svn: 80259
2009-08-27 17:29:49 +00:00
Gabor Greif
6cd12a9f7f re-apply r80197, now that iterator.h is not mentioned any more
llvm-svn: 80254
2009-08-27 17:07:35 +00:00
Anton Korobeynikov
c1e6083cb8 Hopefully the final missing part :(
scalar_to_vector is fully legal now

llvm-svn: 80251
2009-08-27 16:25:49 +00:00
Anton Korobeynikov
3aec90b4d6 Forgot about actual change :)
llvm-svn: 80250
2009-08-27 16:10:17 +00:00
Anton Korobeynikov
cb0fdc4505 scalar_to_vector is fully legal now (implemented as subreg accesses)
llvm-svn: 80249
2009-08-27 16:04:47 +00:00
Devang Patel
0ac8889288 Remove an entry from ValueMap before removing elements.
llvm-svn: 80247
2009-08-27 15:32:38 +00:00
Anton Korobeynikov
e17a92c545 Ok, sometimes it's profitable to turn scalar_to_vector stuff into subreg access.
Add a testcase.

llvm-svn: 80246
2009-08-27 14:51:42 +00:00
Anton Korobeynikov
33d151e85e Transform float scalar_to_vector into subreg accesses.
No idea whether this is profitable or not.

llvm-svn: 80245
2009-08-27 14:38:44 +00:00
Misha Brukman
25e2b59ec6 STRD and LDRD require ARMv5TE, not just ARMv5T.
See http://llvm.org/PR4687 for more info and links.

llvm-svn: 80244
2009-08-27 14:14:21 +00:00
Benjamin Kramer
ad022f0b66 Inverse logic to increase portability.
llvm-svn: 80240
2009-08-27 12:02:34 +00:00
Sanjiv Gupta
4e396dbbb9 To make mcc16 run correctly on mac.
llvm-svn: 80239
2009-08-27 11:54:38 +00:00
Daniel Dunbar
e30a44267c llvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions.
- No relocations yet, of course.

llvm-svn: 80235
2009-08-27 08:17:51 +00:00
Daniel Dunbar
9a8ec155f7 llvm-mc/X86: Implement single instruction encoding interface for MC.
- Note, this is a gigantic hack, with the sole purpose of unblocking further
   work on the assembler (its also possible to test the mathcer more completely
   now).

 - Despite being a hack, its actually good enough to work over all of 403.gcc
   (although some encodings are probably incorrect). This is a testament to the 
   beauty of X86's MachineInstr, no doubt! ;)

llvm-svn: 80234
2009-08-27 08:12:55 +00:00
Daniel Dunbar
b11e3eb82f llvm-mc: Print encodings after the instruction, and only when we have an asm
printer.

llvm-svn: 80233
2009-08-27 07:58:57 +00:00
Daniel Dunbar
87eb328bcf X86: Mark EH_RETURN as code-gen-only.
llvm-svn: 80232
2009-08-27 07:58:05 +00:00
Daniel Dunbar
ed9714d9eb Add {MCInst,MCOperand}::{print,dump}
llvm-svn: 80231
2009-08-27 07:57:12 +00:00
Daniel Dunbar
7e83346fd9 llvm-mc: Only show instruction encodings with --show-encoding.
llvm-svn: 80230
2009-08-27 07:56:39 +00:00
Gabor Greif
44a0da31b3 the buildbots revealed one more breakage. fix. (why didn't I see this?)
llvm-svn: 80227
2009-08-27 06:59:20 +00:00
Gabor Greif
cc8681cea3 Clean up the minor mess I caused with removing iterator.h. I shall take care of 80-col violations and the FIXME later. (Thanks goodness that I live in another continent, so the monkeypox did not strike me :-)
llvm-svn: 80224
2009-08-27 06:41:46 +00:00
Chris Lattner
7785b6000e Implement a new optimization in the inliner: if inlining multiple
calls into a function and if the calls bring in arrays, try to merge
them together to reduce stack size.  For example, in the testcase
we'd previously end up with 4 allocas, now we end up with 2 allocas.

As described in the comments, this is not really the ideal solution
to this problem, but it is surprisingly effective.  For example, on
176.gcc, we end up eliminating 67 arrays at "gccas" time and another
24 at "llvm-ld" time.

One piece of concern that I didn't look into: at -O0 -g with
forced inlining this will almost certainly result in worse debug
info.  I think this is acceptable though given that this is a case
of "debugging optimized code", and we don't want debug info to
prevent the optimizer from doing things anyway.

llvm-svn: 80215
2009-08-27 06:29:33 +00:00
Chris Lattner
93d567a70d the inliner shouldn't crash on this.
llvm-svn: 80214
2009-08-27 06:20:45 +00:00