1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00
Commit Graph

29048 Commits

Author SHA1 Message Date
Chris Lattner
b59923f5b1 remove an execution test from llvm/test
llvm-svn: 33344
2007-01-18 22:24:04 +00:00
Chris Lattner
ef4715a124 Fix InstCombine/2007-01-18-VectorInfLoop.ll, a case where instcombine
infinitely loops.

llvm-svn: 33343
2007-01-18 22:16:33 +00:00
Chris Lattner
f457b999c7 new testcase that causes instcombine to infinitely loop
llvm-svn: 33342
2007-01-18 22:16:03 +00:00
Reid Spencer
97638ab49a Update copyright for 2007.
llvm-svn: 33339
2007-01-18 21:33:56 +00:00
John Criswell
4bdb2ae524 Welcome 2007.
llvm-svn: 33338
2007-01-18 21:22:36 +00:00
Reid Spencer
7ba10cda74 Clean up some code around the store V, (cast P) -> store (cast V), P
transform. Change some variable names so it is clear what is source and
what is dest of the cast. Also, add an assert to ensure that the integer
to integer case is asserting if the bitwidths are different. This prevents
illegal casts from being formed and catches bitwidth bugs sooner.

llvm-svn: 33337
2007-01-18 18:54:33 +00:00
Reid Spencer
b52af65aaa Use a cheaper computation.
llvm-svn: 33336
2007-01-18 18:14:49 +00:00
Reid Spencer
08e261a5f6 Fix a regression in the last patch. When constructing a BitMask, be careful
not to overflow 64-bits and end up with a 0 mask. This caused i64 values to
always be stored as 0 with lots of consequential damage to nightly test.

llvm-svn: 33335
2007-01-18 18:01:32 +00:00
Chris Lattner
54dac5f09e move contents of PR587 to here.
llvm-svn: 33333
2007-01-18 07:34:57 +00:00
Reid Spencer
80bf052680 Provide an isPowerOf2ByteWidth method for the IntegerType class. This will
mostly be used by back ends that wish to distinguish between integer types
that fit evenly within a natural integer type and those that don't.

llvm-svn: 33328
2007-01-18 02:59:54 +00:00
Bill Wendling
62dff8125a The zerofill directive needs a newline after it.
llvm-svn: 33327
2007-01-18 02:30:19 +00:00
Reid Spencer
e242773c58 Use the new maskToBitWidth function to ensure that the results of
computations do not overflow the intended bit width.

llvm-svn: 33326
2007-01-18 02:12:51 +00:00
Reid Spencer
bff2bccb7c Add an inline helper function that masks a GenericValue to a specified
bit width.

llvm-svn: 33325
2007-01-18 02:12:10 +00:00
Evan Cheng
7ff918163b Minor code clean up.
llvm-svn: 33323
2007-01-18 01:49:58 +00:00
Reid Spencer
539c40505b Make shl instruction mask its result to the correct bitsize. This is
sufficient to get llvm-test/SingleSource/UnitTests/Integer/general-test.ll
working with lli in interpreter mode.

llvm-svn: 33321
2007-01-18 01:32:46 +00:00
Reid Spencer
0524da8d3d Two changes:
1. Fix logic for executeGEP. Only 32-bit and 64-bit integer types are
   acceptable as indices.
2. Ensure that all integer cast operations truncate their result to the
   integer size of the operand.

llvm-svn: 33318
2007-01-18 01:25:42 +00:00
Reid Spencer
de3db66983 Make sure we truncate stored values to their bit width.
llvm-svn: 33317
2007-01-18 01:24:02 +00:00
Bill Wendling
af4f1b8791 Have the OutputBuffer take the is64Bit and isLittleEndian booleans.
llvm-svn: 33316
2007-01-18 01:23:11 +00:00
Chris Lattner
770735e1ca Modify emission of jump tables on darwin to emit an extra "l" label that
delimits the boundaries of jump tables.  This lets the linker's dead code
stripping optimization do a better job.

llvm-svn: 33315
2007-01-18 01:15:58 +00:00
Chris Lattner
e0c1ba6269 add new JumpTableSpecialLabelPrefix hook to asmprinter for jumptable emission.
llvm-svn: 33314
2007-01-18 01:12:56 +00:00
Reid Spencer
1f1443b916 For PR1028:
Add the llvm.stacksave and llvm.stackrestore intrinsics that correspond
to the GCC builtins __builtin_stack_save and __builtin_stack_restore. This
allows the CBE to execute these builtins, and fixes:

   test/CodeGen/CBackend/2007-01-17-StackSaveNRestore.ll
   External/SPEC/CINT2000/176.gcc (CBE)

Patch by Gordon Henriksen.

llvm-svn: 33313
2007-01-17 23:33:20 +00:00
Reid Spencer
145fef9445 For PR1028:
Ensure the CBE generates calls to GCC builtins for stack_save and
stack_restore when it encounters the corresponding intrinsics.

Patch by Gordon Henriksen.

llvm-svn: 33312
2007-01-17 23:20:43 +00:00
Bill Wendling
9306626c66 Changed to use the OutputBuffer instead of the methods in MachO and ELF
writers.

llvm-svn: 33311
2007-01-17 22:22:31 +00:00
Bill Wendling
19aee9b178 Refactored output buffer methods from MachO and ELF writers.
llvm-svn: 33310
2007-01-17 22:17:24 +00:00
Devang Patel
756af73d3a Add CGPassManager.
llvm-svn: 33309
2007-01-17 21:45:01 +00:00
Devang Patel
cda3b4d76f Update ModulePass::assignPassManager() to take into account Preferred
Pass Manager Type.

llvm-svn: 33308
2007-01-17 21:19:23 +00:00
Devang Patel
b40f9ee72e s/PassDebugging_New/PassDebugging/g
llvm-svn: 33307
2007-01-17 20:33:36 +00:00
Devang Patel
866ecabe21 Update assignPassManager() signature to allow selection of preferred
pass manager type. This allows new FPPassManager to select Call Graph
Pass Manager (if available) as its parent.

llvm-svn: 33306
2007-01-17 20:30:17 +00:00
Reid Spencer
33f1e701c9 For PR739:
Support overriding the prefix and DESTDIR variables from the make command
line. This makes the makefile system a little more GNU compliant and the
feature makes it easier for distribution builders to re-target the install
location of LLVM.

llvm-svn: 33305
2007-01-17 20:24:45 +00:00
Chris Lattner
cea9f391af restructure code a bit to make use of continue (simplifying things). Generalize
the .zerofill directive emission to not be darwin-specific

llvm-svn: 33304
2007-01-17 17:44:25 +00:00
Chris Lattner
5f4435800e darwin doesn't support .bss, but it does have .zerofill
llvm-svn: 33303
2007-01-17 17:43:33 +00:00
Chris Lattner
1a2c170bc4 add new directive
llvm-svn: 33302
2007-01-17 17:42:42 +00:00
Chris Lattner
6ab744575c document that BSSSection can be null.
Add new ZeroFillDirective directive.

llvm-svn: 33301
2007-01-17 17:42:30 +00:00
Anton Korobeynikov
cac2ebfdee Document flag
llvm-svn: 33300
2007-01-17 10:40:54 +00:00
Anton Korobeynikov
2509765bef * Fix one more bug in PIC codegen: extra load is needed for *all*
non-statics.
* Introduce new option to output zero-initialized data to .bss section.
This can reduce size of binaries. Enable it by default for ELF &
Cygwin/Mingw targets. Probably, Darwin should be also added.

llvm-svn: 33299
2007-01-17 10:33:08 +00:00
Bill Wendling
6cf6bb2d24 Revert patch.
llvm-svn: 33298
2007-01-17 09:06:13 +00:00
Reid Spencer
16b77dade5 The Regression directory is now gone.
llvm-svn: 33297
2007-01-17 08:01:13 +00:00
Reid Spencer
4572ce85b0 Regression is gone, don't try to find it on clean target.
llvm-svn: 33296
2007-01-17 07:59:14 +00:00
Chris Lattner
135e17b756 Make tblgen error more useful. Patch by B. Scott Michel
llvm-svn: 33295
2007-01-17 07:45:12 +00:00
Chris Lattner
fb5249893e make doxygen comment much better. Patch by B. Scott Michel!
llvm-svn: 33294
2007-01-17 07:28:48 +00:00
Reid Spencer
474538d7cd Update for changes in location of Stacker.
llvm-svn: 33293
2007-01-17 05:37:42 +00:00
Chris Lattner
920e143505 remove obsolete comment
llvm-svn: 33292
2007-01-17 05:26:57 +00:00
Bill Wendling
60dcce11c7 Create the specified TargetObjInfo and use it.
llvm-svn: 33291
2007-01-17 03:51:37 +00:00
Bill Wendling
dafa644e4d Create/store/and delete the TargetObjInfo object.
llvm-svn: 33290
2007-01-17 03:50:41 +00:00
Bill Wendling
ad6ddaa316 Use the methods in the TargetObjInfo object instead of internal methods.
llvm-svn: 33289
2007-01-17 03:49:21 +00:00
Bill Wendling
ec27b2bc2f The TargetObjInfo object goes here.
llvm-svn: 33288
2007-01-17 03:48:29 +00:00
Bill Wendling
d9649bf5bb Removed methods which are now in the respective TargetObjInfo implementations.
llvm-svn: 33287
2007-01-17 03:47:54 +00:00
Bill Wendling
5789edd7f5 New "TargetObjInfo" class. This holds information that the object writers will
use to write things to the file. It's abstract so each target should implement
its own version for each writer type.

llvm-svn: 33286
2007-01-17 03:46:30 +00:00
Reid Spencer
ad67732a72 Fix this tool for use on Darwin which requires the file to come after the
commands. Linux is more forgiving.

Patch by Gordon Henriksen. Thanks, Gordon!

llvm-svn: 33285
2007-01-17 03:38:22 +00:00
Reid Spencer
0ef35f9e8f Regenerate.
llvm-svn: 33284
2007-01-17 02:48:45 +00:00