Commit Graph

16209 Commits

Author SHA1 Message Date
Reid Spencer 2ea2100e9d PR409 fixed.
llvm-svn: 18586
2004-12-06 22:32:33 +00:00
Reid Spencer a8288d93ae For PR409: \
Test the range of float constants to ensure we are not attempting to create a \
float constant using a double value that is out of range for a float

llvm-svn: 18585
2004-12-06 22:18:37 +00:00
Reid Spencer 95044d0071 For PR409: \
Make sure to check isValueValidForType on floating point constants and give \
an error if the value is not valid, otherwise it would assert in the VMCore

llvm-svn: 18584
2004-12-06 22:18:25 +00:00
John Criswell ff845b4f96 This test still fails on Darwin and Sparc/Solaris.
llvm-svn: 18583
2004-12-06 22:05:02 +00:00
Reid Spencer 10afebddcc Test case for PR409:
Make sure that floating point constant values outside the range of a float
cannot be assigned to a constant.

llvm-svn: 18582
2004-12-06 21:57:59 +00:00
John Criswell b2249635ae Remove the last pieces of QMTest.
llvm-svn: 18581
2004-12-06 21:35:32 +00:00
Reid Spencer 46f5c4f214 Revert previous changes to remove -enable-linscan and the *BETA columns of
the nightly test. These are still needed for iterative linear scan testing.

llvm-svn: 18577
2004-12-06 20:14:45 +00:00
Reid Spencer ecec7939bc Rather than break all the nightly test invocations, permit -enable-linscan
option to be specified, but do nothing with it.

llvm-svn: 18575
2004-12-06 18:33:54 +00:00
Reid Spencer 1443c4f039 Remove LLC-BETA and linear scan options as they are no longer reported.
llvm-svn: 18574
2004-12-06 18:29:14 +00:00
Reid Spencer ca1baad120 Change check to check-local per Makefile.rules changes.
llvm-svn: 18568
2004-12-06 05:35:38 +00:00
Reid Spencer 3f5ed7b1f7 Upgrade documentation to reflect Makefile.rules changes.
llvm-svn: 18567
2004-12-06 05:35:25 +00:00
Reid Spencer 8b5ebe561e Add the check target so all projects can have this
functionality.

llvm-svn: 18566
2004-12-06 05:35:13 +00:00
Reid Spencer 876ae54f63 Remove the check target. Its now in Makefile.rules
llvm-svn: 18565
2004-12-06 05:35:00 +00:00
Tanya Lattner 4d69018fe9 Added DejaGNU information to the testing guide. This should go into the 1.4 release.
I left the QMTest stuff in place but made it appear to be optional.

llvm-svn: 18564
2004-12-06 02:11:52 +00:00
Reid Spencer ffcf42329a PR139 fixed.
llvm-svn: 18551
2004-12-05 20:19:45 +00:00
Alkis Evlogimenos 75a93f23b3 Add accessors for Constants in a ConstantStruct.
llvm-svn: 18550
2004-12-05 20:09:18 +00:00
Reid Spencer ef96665753 Fix PR139:\
When not linking as a library, use LinkItems to retain command line order of \
linking, otherwise use LinkFiles

llvm-svn: 18549
2004-12-05 19:15:29 +00:00
Reid Spencer 9f1cf33a54 Make use of the LLVMGCCStdCXXLibDir variable to link objects
llvm-svn: 18548
2004-12-05 19:15:06 +00:00
Reid Spencer 1014afc7ea Fix PR139: \
Implement LinkItems and BuildLinkItems interfaces.

llvm-svn: 18547
2004-12-05 19:14:55 +00:00
Reid Spencer a3df351820 Fix PR139: \
Add support for ordered linking with the LinkItems function

llvm-svn: 18546
2004-12-05 19:14:43 +00:00
Reid Spencer e96b620570 Describe the MODULE_NAME control variable
llvm-svn: 18545
2004-12-05 19:14:31 +00:00
Reid Spencer 6d6503a9b3 Provide a variable to compute where the libstdc++.a is
llvm-svn: 18544
2004-12-05 19:14:19 +00:00
Chris Lattner db332473fa Suggest people run cvs up -P -d after checking out the tree so they don't
get empty directories

llvm-svn: 18543
2004-12-05 17:48:03 +00:00
Chris Lattner a34f9da4b4 Properly implement a fix for PR475
llvm-svn: 18537
2004-12-05 07:19:16 +00:00
Chris Lattner cc6d1928d2 Make this test actually capable of passing.
llvm-svn: 18536
2004-12-05 07:15:21 +00:00
Chris Lattner 1a0117f641 Revert this patch, it broke a ton of programs.
llvm-svn: 18535
2004-12-05 06:59:59 +00:00
Chris Lattner f878f75d46 Move lower intrinsics before FP constant emission, in case
intrinsic lowering ever introduces constants.

Rename local symbols before printing function bodies, fixing 255.vortex
with the CBE!!!

llvm-svn: 18534
2004-12-05 06:49:44 +00:00
Chris Lattner fa171f11b8 Change this test to not require execution of the program.
llvm-svn: 18533
2004-12-05 06:45:30 +00:00
Chris Lattner 97e36f211b When printing out a function, make sure that local and global symbols
don't conflict.  This fixes Assembler/2004-12-05-LocalGlobalSymtabConflict.ll

llvm-svn: 18532
2004-12-05 06:44:09 +00:00
Chris Lattner b392d30761 Add a new method
llvm-svn: 18531
2004-12-05 06:43:27 +00:00
Chris Lattner 0ba8f4e191 Fix typeo
llvm-svn: 18530
2004-12-05 06:33:15 +00:00
Chris Lattner a6086ef48d New testcase for the bug affecting 255.vortex in CBE mode.
llvm-svn: 18529
2004-12-05 06:18:35 +00:00
Reid Spencer cceae4217f Correct build script for stkr_runtime module
llvm-svn: 18526
2004-12-05 05:18:28 +00:00
Reid Spencer d8d9fb325f Build a module instead of a library so main() is not missed
llvm-svn: 18525
2004-12-05 05:18:16 +00:00
Reid Spencer 107f576732 Make a const method const
llvm-svn: 18524
2004-12-05 05:17:34 +00:00
Reid Spencer d78077dd13 Add ability to make a single bytecode module from others
llvm-svn: 18523
2004-12-05 05:17:22 +00:00
Alkis Evlogimenos 7527cd53fa Remove unneeded code
llvm-svn: 18516
2004-12-05 02:03:16 +00:00
Alkis Evlogimenos 8c5affedd1 Fix PR475.
llvm-svn: 18515
2004-12-05 01:51:20 +00:00
Alkis Evlogimenos a90f19621b Match codegen string better
llvm-svn: 18514
2004-12-05 01:50:32 +00:00
Alkis Evlogimenos 58355ab372 Add testcast for bug475
llvm-svn: 18513
2004-12-05 01:44:46 +00:00
Chris Lattner d9791b0007 Darwin and solaris don't support echo -e. This should get the test passing
for them.

llvm-svn: 18511
2004-12-04 23:44:42 +00:00
Chris Lattner 59ed56e232 This fails due to the sun headers.
llvm-svn: 18510
2004-12-04 23:24:30 +00:00
Chris Lattner 02d5676936 This test passes on all platforms
llvm-svn: 18509
2004-12-04 23:21:41 +00:00
Chris Lattner b5fd4a2f85 These tests pass on darwin now that the __ thing is fixed.
llvm-svn: 18508
2004-12-04 23:20:14 +00:00
Reid Spencer 20275c1d5d Failing Feature/Regression test should fail the build
llvm-svn: 18507
2004-12-04 22:34:47 +00:00
Reid Spencer 895ad73daa Use the FAKE_SOURCES feature for proper distribution of contents
llvm-svn: 18506
2004-12-04 22:34:33 +00:00
Reid Spencer ca49210f65 Distribute headers and license files too
llvm-svn: 18505
2004-12-04 22:34:21 +00:00
Reid Spencer 81546587d5 Getting dist-check to work:\
* Implement the FAKE_SOURCES feature for GCCLibraries/crtend \
* Search for distribution files >first< in srcdir and >second< in objdir \
* Make dist-hook only run in top level directory. \
* Make dist-check run correctly in parallel builds \
* Wrap lines to 80 cols \
* Standardize variable names

llvm-svn: 18504
2004-12-04 22:34:09 +00:00
Reid Spencer b16e4b7ca5 CVS directory elimination moved to Makefile.rules
llvm-svn: 18503
2004-12-04 22:33:58 +00:00
Reid Spencer ef510c0279 Provide more information in the error message that occurs when there are
unresolved constants remaining.

llvm-svn: 18502
2004-12-04 22:19:53 +00:00
Reid Spencer 5ae9a04e40 Print out something useful instead of a blank table when the external tests
are skipped by user option.

llvm-svn: 18501
2004-12-04 22:18:28 +00:00
Chris Lattner 8145bd5006 Check in some patches for better assertions
llvm-svn: 18500
2004-12-04 21:28:47 +00:00
Chris Lattner a27dd47e7a This patch prevents an infinite recursion while compiling 103.su2cor.
All SPEC CFP 95 programs now work, though the JIT isn't loading -lf2c right
so they aren't testing correctly.

llvm-svn: 18499
2004-12-04 20:54:32 +00:00
Chris Lattner 77e8f43c72 Move the dejagnu section to immediately before the 'trends' section.
llvm-svn: 18497
2004-12-04 20:18:21 +00:00
Chris Lattner af045fa120 Remove last remnants of qmtest stuff
llvm-svn: 18496
2004-12-04 19:57:27 +00:00
Chris Lattner 5b87507304 Update the win32 project files, contributed by Morton Ofstad!
llvm-svn: 18495
2004-12-04 19:14:38 +00:00
Chris Lattner a57c105687 Fix linkage of mismatched weak globals. This unbreaks 300.twolf
llvm-svn: 18494
2004-12-04 18:54:48 +00:00
Reid Spencer 9cb0f7097c Use the install-bytecode target to install just the bytecode libs into
the CFE's install/bytecode-libs directory.

llvm-svn: 18493
2004-12-04 08:13:20 +00:00
Chris Lattner 144924cbaa Clean feature also
llvm-svn: 18491
2004-12-04 06:47:07 +00:00
Tanya Lattner 03dfe165e1 Run dejagnu by default.
llvm-svn: 18490
2004-12-04 06:35:14 +00:00
Tanya Lattner 24726f9a5d Removed QMTest functions. The nightly tester no longer runs qmtest. It now runs dejagnu by default and you must turn it off using -nodejagnu.
llvm-svn: 18489
2004-12-04 06:25:50 +00:00
Tanya Lattner 26a1367d8a Made it default to check instead of check-dejagnu.
llvm-svn: 18488
2004-12-04 06:25:08 +00:00
Chris Lattner 8f97278c49 Do not allow bytecode files with unresolved references to be read. Doing
so lets wierd ConstantPlaceholder objects sneak into the system which
confuses it greatly.

llvm-svn: 18487
2004-12-04 05:28:27 +00:00
Chris Lattner 73a1914131 Fix compilation error on Darwin.
llvm-svn: 18485
2004-12-04 04:17:20 +00:00
Alkis Evlogimenos be526cfba4 Check if a block has a terminator first before calling front() on
it. If a block has a terminator then it is certainly non-empty so the
verifier will not crash on it.

llvm-svn: 18484
2004-12-04 02:30:42 +00:00
Alkis Evlogimenos b92de19116 Make error msg reflect what exactly went wrong.
llvm-svn: 18478
2004-12-04 01:25:06 +00:00
Chris Lattner 5684f4817f Prevent accessing past the end of the intervals vector, this fixes
Prolang-C/bison in the JIT

llvm-svn: 18477
2004-12-04 01:22:09 +00:00
Misha Brukman 68ef9a9a4d Use the standard PR### notation for referencing bugs in bugzilla
llvm-svn: 18476
2004-12-04 00:45:09 +00:00
Misha Brukman 47d186cf55 Remove more smileys. I kept the one in WritingAnLLVMPass because it is actually
funny.

llvm-svn: 18475
2004-12-04 00:33:34 +00:00
Misha Brukman 6d1686c18b Documentation which contains smileys won't be taken seriously by some people.
llvm-svn: 18474
2004-12-04 00:32:12 +00:00
Chris Lattner 997153df35 Update for changes to check targets.
llvm-svn: 18473
2004-12-04 00:04:48 +00:00
Misha Brukman 8d9a83a908 * Link to the license file from release 1.3 (should we link to CVS version
instead?)
* Encapsulate code and header file names with <tt> and </tt>
* Arrange <p> and </p> tags to be inline with the text they contain

llvm-svn: 18472
2004-12-03 23:58:18 +00:00
Chris Lattner e175aa5cc1 check is now a single colon rule. Also make it default to running dejagnu instead of qmtest
llvm-svn: 18471
2004-12-03 23:57:00 +00:00
Chris Lattner 1701409c9a Remove all recursive check support from Makefile.rules
llvm-svn: 18470
2004-12-03 23:56:41 +00:00
Misha Brukman 9976d3486f Remove extraneous space in link
llvm-svn: 18468
2004-12-03 23:26:23 +00:00
Chris Lattner 87a756f09f Remove darwin specific majik
llvm-svn: 18467
2004-12-03 23:02:55 +00:00
Chris Lattner 4cf8b36469 Move darwin-specific majik here.
llvm-svn: 18466
2004-12-03 23:02:42 +00:00
Chris Lattner fc61de3902 Significantly rework linker support for global variables, allowing it to
correctly link globals whose LLVM types do not match.

This fixes several of the F2C SPEC FP benchmarks, which were failing this
due to the implementation of common blocks used by f2c.

llvm-svn: 18465
2004-12-03 22:18:41 +00:00
John Criswell 8e18e88392 Removed QMTests as I will be zapping them soon.
I've done some testing, and this seems to work, but if people who use
the nightly tester regularly could spot check these changes, I'd be
appreciative.

llvm-svn: 18464
2004-12-03 21:56:30 +00:00
Chris Lattner 661a714d2c 'make check' at the top level shouldn't recurse through the sourcedirs
llvm-svn: 18463
2004-12-03 21:05:57 +00:00
Reid Spencer d4bd375d37 Resurrect the install-bytecode target for installing just the bytecode
libraries to the CFE.

llvm-svn: 18462
2004-12-03 20:08:48 +00:00
Chris Lattner 2434bb968c Do not multiply define symbol
llvm-svn: 18461
2004-12-03 19:48:10 +00:00
Chris Lattner b3d140deaa Bug fixed
llvm-svn: 18460
2004-12-03 17:21:33 +00:00
Chris Lattner 26d9c22832 Fix test/Regression/CodeGen/CBackend/2004-12-03-ExternStatics.ll and
PR472

llvm-svn: 18459
2004-12-03 17:19:10 +00:00
Chris Lattner 1cc226eba1 new testcase for PR472
llvm-svn: 18458
2004-12-03 17:18:42 +00:00
Chris Lattner 9019e5cfa0 Implement stripping of debug symbols, making the --strip-debug options in
gccas/gccld more than just a noop.

llvm-svn: 18456
2004-12-03 16:22:08 +00:00
John Criswell ebaef2c0d9 Fixed typo.
llvm-svn: 18455
2004-12-03 15:59:26 +00:00
Chris Lattner 5a4dc8ca5a Do not look here for elegance.
This fixes the ugly darwin "cannot find symbols starting with __" issue.

Thanks for Owen/resistor for testing this out for me.

llvm-svn: 18454
2004-12-03 07:16:51 +00:00
Brian Gaeke 608a6dae43 This code rotted - change it to call abort() until someone wants
to rewrite this to use relocations.

llvm-svn: 18453
2004-12-03 06:57:14 +00:00
Reid Spencer 2b1b83a520 Pass -strip-debug to gccas when bytecode libraries are being built.
llvm-svn: 18452
2004-12-03 06:04:35 +00:00
Chris Lattner 0558e23872 Add -strip-debug option
remove the temporary -disable-dse option

llvm-svn: 18451
2004-12-03 05:45:58 +00:00
Tanya Lattner c0d9dcdfac When writing kernel, save the branches til the end. They are still put in the "right place" in the schedule, but sometimes when folding to make a kernel instructions are added between branches. This is wrong. To avoid this, we handle branches special.
llvm-svn: 18450
2004-12-03 05:25:22 +00:00
Chris Lattner 9d76c236f7 Fix a regression caused by the previous patch
llvm-svn: 18449
2004-12-03 05:13:15 +00:00
John Criswell f29f760354 These lookup symbols with leading underscores, which currently fails in
the PowerPC JIT.
Hence, they are XFAILs.

llvm-svn: 18443
2004-12-02 21:28:37 +00:00
Chris Lattner 99a7c3d26f Adjust to change in pass name
llvm-svn: 18442
2004-12-02 21:27:35 +00:00
Chris Lattner 4913b65616 Recognize --strip-all as a synonym for -s.
Add -S and --strip-debug option support.

llvm-svn: 18441
2004-12-02 21:26:10 +00:00
Chris Lattner e8ebcb3300 Initial reimplementation of the -strip pass, with a stub for implementing
-S

llvm-svn: 18440
2004-12-02 21:25:03 +00:00
Chris Lattner a4c9808603 This pass is moving to lib IPO
llvm-svn: 18439
2004-12-02 21:24:40 +00:00
Chris Lattner 4459cb260a Move the strip pass from Scalar to IPO lib
llvm-svn: 18438
2004-12-02 21:24:19 +00:00
Chris Lattner e3d98f1fd8 Quiet!
llvm-svn: 18437
2004-12-02 21:23:43 +00:00
Chris Lattner 7651614c4d The stripping pass as we know it is about to disappear
llvm-svn: 18436
2004-12-02 21:05:01 +00:00
John Criswell 335c342440 Reverting revision 1.209.
Including alloca.h on Solaris brings in the prototype of strftime(), which
breaks compilation of CBE generated code.

llvm-svn: 18435
2004-12-02 19:02:49 +00:00
Chris Lattner 420847f879 Add a note
llvm-svn: 18434
2004-12-02 18:21:45 +00:00
Chris Lattner 33660426a5 Spill/restore X86 floating point stack registers with 64-bits of precision
instead of 80-bits of precision.  This fixes PR467.

This change speeds up fldry on X86 with LLC from 7.32s on apoc to 4.68s.

llvm-svn: 18433
2004-12-02 18:17:31 +00:00
Chris Lattner 96b14e18bb Consider 64-bit registers to be FP as well.
llvm-svn: 18432
2004-12-02 17:57:21 +00:00
Chris Lattner fa83510f94 Document beta pass
llvm-svn: 18431
2004-12-02 17:20:17 +00:00
Reid Spencer 53c59689d1 Standardize the makefiles with space around = to match the rest of LLVM.
llvm-svn: 18429
2004-12-02 09:58:09 +00:00
Reid Spencer f78508b25e PR466:
* Make the linker find lib*.bca files now instead of lib*.bc since those
  are what the makefiles now generate for bytecode archives.
* Make sure the linker only links archives when LinkLibraries is called.
  Previously if it found a lib*.bc file and that file was a bytecode file,
  it would link in the entire bytecode. This could make -lc -lc fail with
  duplicate symbols error but it shouldn't as searching multiple libraries,
  even the same one more than once, is permitted.
* Now that the above problems are corrected, implement the dependent libs
  feature. After the module is linked with all specified libraries, the
  LinkLibraries function will obtain the set of dependent libraries from
  the linked modules and attemp to find and link against those libraries.

llvm-svn: 18428
2004-12-02 09:52:10 +00:00
Reid Spencer d6dcad7745 Standardize the format of the runtime libraries makefiles.
* Don't have lines longer than 80 cols
* Blank line after the header
* Reduce spaces in var definitions.

llvm-svn: 18427
2004-12-02 09:31:40 +00:00
Reid Spencer dbaac1ff17 For PR466:
Much of what this Makefile did to make a libcrtend.a file is now supported
by Makefile.rules when BYTECODE_LIBRARY=1 is specified. So, we've
simplified the make rules for building this library.

llvm-svn: 18426
2004-12-02 09:29:49 +00:00
Reid Spencer 32f7e42744 For PR466:
Change construction of bytecode libraries from producing a single bytecode
file to producing a library containing bytecode files. This gets around the
problem of multiple symbol definitions in the linker if something like
-lc -lc is attempted on the command line. Previously this happened because
the linker would find libc.bc as a "library". It will now find libc.a which
it can simply search for missing symbols instead of linking in wholesale.

llvm-svn: 18425
2004-12-02 09:28:21 +00:00
Reid Spencer 59d89f598c Remove this left-over crud from the automake experiment.
llvm-svn: 18424
2004-12-02 09:23:51 +00:00
Reid Spencer 295a3bbb18 Implement file replacement correctly even with the f (TruncateNames) flag
set. The member name comparison was failing for truncated names. This patch
fixes that. Truncated names are now properly replaced.

llvm-svn: 18423
2004-12-02 09:21:55 +00:00
Reid Spencer f473185cbc Fix seriously broken implementation of GetMagicNumber.
llvm-svn: 18422
2004-12-02 09:09:48 +00:00
Reid Spencer 1c8a34ff77 Search for tclsh last so we don't find the FreeBSD warning script too early
llvm-svn: 18421
2004-12-02 07:31:22 +00:00
Reid Spencer 188a22fc14 Search for tclsh last so we don't find the FreeBSD warning script.
llvm-svn: 18420
2004-12-02 07:29:17 +00:00
Tanya Lattner 201e972dc4 Reworked branch adding in prologue. Added check for infinite loops which are not modulo scheduled.
llvm-svn: 18419
2004-12-02 07:22:15 +00:00
Chris Lattner c0677c081d Implement a FIXME by checking to make sure that a malloc is not being used
in scary and unknown ways before we promote it.  This fixes the miscompilation
of 188.ammp that has been plauging us since a globalopt patch went in.

Thanks a ton to Tanya for helping me diagnose the problem!

llvm-svn: 18418
2004-12-02 07:11:07 +00:00
Chris Lattner 3b18139b3c Fix a minor bug where we set a var to initialized on malloc, not on store.
This doesn't fix anything that I'm aware of, just noticed it by inspection

llvm-svn: 18417
2004-12-02 06:25:58 +00:00
Reid Spencer 7784c2f12e Fix the tclsh test to find tclsh8.[34] and tclsh8.[34].X as well.
llvm-svn: 18415
2004-12-02 04:17:20 +00:00
Reid Spencer 8d61104f97 * Make sure the cache variable gets cached
* Don't search a bunch of .. directories for something we'd never find,
  because we don't imbed tclsh into LLVM.
* Look for various tclsh versions because some platforms don't install the
  tclsh link but just have tclsh8.3 or tclsh8.4 or some such.

llvm-svn: 18414
2004-12-02 04:15:24 +00:00
Chris Lattner 434f90ff2d Remove dead field
llvm-svn: 18412
2004-12-02 02:35:38 +00:00
Chris Lattner 9cf32444bb This program doesn't break anything anymore.
llvm-svn: 18411
2004-12-02 02:26:18 +00:00
Misha Brukman 3ae96e3727 Reid has implemented llvm-ranlib. Thanks, Reid!
llvm-svn: 18410
2004-12-01 21:07:40 +00:00
Misha Brukman d0bb8bebc8 * Hyphenate ``constant-propagate''
* Add testing notes to the instruction section similar as for intrinsics
* Mention adding codegen support for new instructions

llvm-svn: 18409
2004-12-01 20:58:54 +00:00
Misha Brukman e070ae69fc Remove duplicated link to "Machine backend"
llvm-svn: 18408
2004-12-01 19:12:27 +00:00
Tanya Lattner e94b466a8e Reverting this patch:
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041122/021428.html

It broke Mutlisource/Applications/obsequi

llvm-svn: 18407
2004-12-01 18:27:03 +00:00
Chris Lattner e58bf09138 Initial support for packed types, contributed by Morten Ofstad
llvm-svn: 18406
2004-12-01 17:14:28 +00:00
Chris Lattner 9a43d294b9 Remove unneeded cast.
llvm-svn: 18405
2004-12-01 17:13:05 +00:00
Chris Lattner cf2e128758 Get GEP's working with packed types. Contributed by Morten Ofstad!
llvm-svn: 18404
2004-12-01 17:12:16 +00:00
Chris Lattner 9812dbcc76 Add line # info
llvm-svn: 18403
2004-12-01 17:10:36 +00:00
John Criswell 51f8ded5e7 Fixed pathname to LLVM tools.
Thanks to Vladimir Merzliakov for finding this.

llvm-svn: 18402
2004-12-01 14:12:30 +00:00
Reid Spencer f6a10fa333 Be a little more explicit about how to configure LLVM with the --prefix
option so that permissions errors don't occur if the default, /usr/local,
is taken.

llvm-svn: 18401
2004-12-01 05:15:44 +00:00
Chris Lattner 2a2ebd1829 Fix typeo, thanks to Duraid for pointing it out
llvm-svn: 18400
2004-12-01 04:16:29 +00:00
Reid Spencer 3f2352e23e Revert version 1.39. It breaks the ordering of the library processing.
llvm-svn: 18399
2004-11-30 22:54:48 +00:00
Chris Lattner 798e0349c0 Do not let GCC emit a warning for INT64_MIN
llvm-svn: 18398
2004-11-30 21:33:58 +00:00
Brian Gaeke 86deaf2211 Sparcs behave better if we use <alloca.h> and avoid messing with __builtin_alloca.
llvm-svn: 18397
2004-11-30 21:27:01 +00:00
Tanya Lattner 33f621acf8 Added TCLSH var to site.exp.
llvm-svn: 18396
2004-11-30 19:13:06 +00:00
Chris Lattner a6992ae74f Move this from the C test suite
llvm-svn: 18395
2004-11-30 18:25:12 +00:00
Chris Lattner bf3a546a5b This is a c++ test
llvm-svn: 18394
2004-11-30 18:25:05 +00:00
Chris Lattner 3f9b831041 Add back -e, which apparently works in sh's echo but not tcsh's, which does
not need it.  Also, grep some output so we know that this command does something.

llvm-svn: 18393
2004-11-30 17:47:13 +00:00
Chris Lattner 4114c7d87c If TESTSUITE is set, we obviously want to run dejagnu
llvm-svn: 18392
2004-11-30 17:45:08 +00:00
Chris Lattner 56bac30683 Fix the JIT when being used from llvm-db
llvm-svn: 18391
2004-11-30 17:41:49 +00:00
Chris Lattner f4b262a3ec do not pass -e into llvm-db as a command.
llvm-svn: 18390
2004-11-30 17:13:13 +00:00
Chris Lattner c7edfa52a4 Put the output in the temporary location
llvm-svn: 18389
2004-11-30 17:12:00 +00:00
Chris Lattner 3f6419949c This is a cross platform fail, failing on freebsd as well
llvm-svn: 18388
2004-11-30 17:10:47 +00:00
Chris Lattner 951673a94c This pass is completely broken.
llvm-svn: 18387
2004-11-30 17:09:06 +00:00
Chris Lattner 37a14496c5 RevisionNum is read by error(), initialize it early.
llvm-svn: 18386
2004-11-30 16:58:18 +00:00
Chris Lattner d7f028e4e3 This was fixed with the recent tester changes.
llvm-svn: 18385
2004-11-30 16:48:26 +00:00
Brian Gaeke 5c9fa5bcee Update list of failing benchmarks.
llvm-svn: 18384
2004-11-30 08:15:44 +00:00
Brian Gaeke 1d6b926ab6 If we're about to emit something like:
%f0 = fmovs %f0
  %f1 = fmovs %f1

then just delete the FpMOVD pseudo-instruction instead.  Also, add
statistics and debug printouts.

llvm-svn: 18383
2004-11-30 08:15:15 +00:00
Reid Spencer 105d4152d7 Add a check for the tclsh program needed by dejagnu. This can have weird
names that have version numbers in it so this macro, DJ_AC_PATH_TCLSH will
make the necessary checks. The makefile variable TCLSH is set to the path
found.

llvm-svn: 18382
2004-11-30 08:11:54 +00:00
Chris Lattner 019445715e Squelch warning
llvm-svn: 18381
2004-11-30 07:47:34 +00:00
Chris Lattner b15064a776 This passes on darwin now
llvm-svn: 18380
2004-11-30 07:38:41 +00:00
Chris Lattner bd11625469 Fix several bugs in 'op x, imm' handling. Foremost is that we now emit
addi r3, r3, -1
instead of
   addi r3, r3, 1

for 'sub int X, 1'.

Secondarily, this fixes several cases where we could crash given an unsigned
constant.  And fixes a couple of minor missed optimization cases, such as
xor X, ~0U -> not X

llvm-svn: 18379
2004-11-30 07:30:20 +00:00
Reid Spencer 95729469cc Up the compression threshold to 64K so we avoid it for all but the largest
bytecode files. This should help linking substantially.

llvm-svn: 18378
2004-11-30 07:13:34 +00:00
Chris Lattner 868ae13dc0 Fix test/Regression/Transforms/LICM/2004-09-14-AliasAnalysisInvalidate.llx
This only fails on darwin or on X86 under valgrind.

llvm-svn: 18377
2004-11-30 07:01:15 +00:00
Chris Lattner 7562a05735 Fix CodeGen/PowerPC/2004-11-30-shr-var-crash.ll
llvm-svn: 18376
2004-11-30 06:40:04 +00:00
Chris Lattner 16c07fdd15 New testcase that crashes the PPC BE
llvm-svn: 18375
2004-11-30 06:39:45 +00:00
Chris Lattner ce350cbd3a Fix test/Regression/CodeGen/PowerPC/2004-11-29-ShrCrash.ll
llvm-svn: 18374
2004-11-30 06:36:11 +00:00
Chris Lattner c45bdadaf8 New testcase
llvm-svn: 18373
2004-11-30 06:35:52 +00:00
Tanya Lattner 97b21a06a3 Adding timeout for a test.
llvm-svn: 18372
2004-11-30 06:29:45 +00:00
Chris Lattner 9eeb2033ff Fix test/Regression/CodeGen/PowerPC/2004-11-30-shift-crash.ll
llvm-svn: 18371
2004-11-30 06:29:10 +00:00
Chris Lattner 90e62de4e9 New testcase that crashes the PPC backend
llvm-svn: 18370
2004-11-30 06:28:53 +00:00
Chris Lattner fd8cbc257e Alkis noticed that this variable is dead. Thanks!
llvm-svn: 18369
2004-11-30 04:01:44 +00:00
Chris Lattner 0b6ebd8d10 Add method
llvm-svn: 18368
2004-11-30 02:51:53 +00:00
Chris Lattner 889e91d58d New testcase for simplifycfg
llvm-svn: 18367
2004-11-30 00:31:16 +00:00
Chris Lattner 389cfac0d1 If we have something like this:
if (x) {
    code
    ...
  } else {
    code
    ...
  }

Turn it into:

  code
  if (x) {
    ...
  } else {
    ...
  }

This reduces code size and in some common cases allows us to completely
eliminate the conditional.  This turns several if/then/else blocks in loops
into straightline code in 179.art, turning the loops into single basic blocks
(good for modsched even!).

Maybe now brg will leave me alone ;-)

llvm-svn: 18366
2004-11-30 00:29:14 +00:00
Chris Lattner e0c207d2d3 Remove extraneous namespacification. In particular, don't define llvm::llvm::createInternalGlobalMapperPass
llvm-svn: 18365
2004-11-30 00:22:59 +00:00
John Criswell fc1a1dd203 Fix a typo.
Corrected a potential grammary issue.

llvm-svn: 18364
2004-11-29 21:46:29 +00:00
Chris Lattner 6e455608e2 Allow hoisting loads of globals and alloca's in conditionals.
llvm-svn: 18363
2004-11-29 21:26:12 +00:00
Chris Lattner 0ea40c935f Make built bytecode libraries depend on gccas/gccld as appropriate. This
should fix the stale runtime libraries problem.

llvm-svn: 18361
2004-11-29 19:47:58 +00:00
Reid Spencer e1cb6b9e2e Fix two bugs:
1. Nothing should happen on "make all". Doc generation is quick, but we
   don't want to do it unless we're installing.
2. Correct a dependency for the *.ps files .. didn't notice this before
   because of cruft in my directory. It failed on a clean build.

llvm-svn: 18359
2004-11-29 14:46:29 +00:00
Reid Spencer 4f44c95967 Functionality moved to portable lib/System/DynamicLibrary.cpp
implementation

llvm-svn: 18358
2004-11-29 14:11:41 +00:00
Reid Spencer 70e37278cb Use System/DynamicLibrary instead of Support/DynamicLinker
llvm-svn: 18357
2004-11-29 14:11:29 +00:00
Reid Spencer 9ec2761bb7 Use System/DynamicLibrary instead of Support/DynamicLinker to implement.
llvm-svn: 18356
2004-11-29 14:07:46 +00:00
Reid Spencer 0e6a4fc448 Implement two new functions: LoadLibraryPermanently and
SearchForAddressOfSymbol.

llvm-svn: 18355
2004-11-29 13:33:28 +00:00
Reid Spencer c4c3f5a980 Add in some methods for use by the JIT. LoadLibraryPermanently brings the
library into the address space permanently. SearchForAddressOfSymbol looks
in all previously permanently loaded libraries and any currently open
libraries for a symbol, instead of just one library like GetAddressOfSymbol

llvm-svn: 18354
2004-11-29 13:27:56 +00:00
Reid Spencer d1697bf2f7 Shared library extension is now in LTDL_SHLIB_EXT
llvm-svn: 18353
2004-11-29 12:40:21 +00:00
Reid Spencer 3468ae1a87 We just use ltdl's implementation for this abstraction now. Its portable to
more platforms than LLVM supports.

llvm-svn: 18352
2004-11-29 12:39:10 +00:00
Reid Spencer 50f3487fad Allow reconfig from any directory, not just the top build directory, by
changing directory first. Also make sure that we don't attempt to run
config.status if the recheck didn't work.

llvm-svn: 18351
2004-11-29 12:37:44 +00:00
Reid Spencer c680f05aeb Changes resulting from AC_LIB_LTDL usage.
llvm-svn: 18350
2004-11-29 12:36:16 +00:00
Reid Spencer a40c687fe8 * Implement embedding libltdl into LLVM which required some rearranging.
llvm-svn: 18349
2004-11-29 12:29:58 +00:00
Reid Spencer 7905a70840 * Update instructions about upgrading libtool
* Add instructions about upgrading autoconf

llvm-svn: 18348
2004-11-29 12:28:47 +00:00
Reid Spencer 54f36c677f Don't include ltdl.h any more. Its nested in lib/System now.
llvm-svn: 18347
2004-11-29 12:12:11 +00:00
Reid Spencer 47430cf2a5 Mods for compilation with llvm.
llvm-svn: 18346
2004-11-29 12:04:27 +00:00
Reid Spencer 11ba920d55 Original version of ltdl.h from libtool 1.5.10
llvm-svn: 18345
2004-11-29 12:02:48 +00:00
Reid Spencer 6717b80ba2 Original version of ltdl.c from libtool 1.5.10
llvm-svn: 18344
2004-11-29 12:02:25 +00:00
Reid Spencer 2c7c2a0774 Converted with autoupdate for autoconf 2.50 -> 2.59 differences.
llvm-svn: 18343
2004-11-29 11:27:12 +00:00
Reid Spencer 8b3fd7639e This file contains macros that allow us to incorporate the ltdl source into
our own library so that it is magically hidden and we don't have to depend
on linking with -lltdl option.

llvm-svn: 18342
2004-11-29 10:56:45 +00:00
Reid Spencer 72a7457a90 Implement the default constructor which causes the current program to be
opened as if it was a dynamic library so its symbols can be searched too.

llvm-svn: 18341
2004-11-29 10:39:46 +00:00
Reid Spencer 073173568d Make the default constructor cause the program's symbols to be loaded as
if it was a dynamic library.

llvm-svn: 18340
2004-11-29 10:38:54 +00:00
Reid Spencer 1a8b379d84 Make it HTML 4.01 Strict compliant.
llvm-svn: 18339
2004-11-29 07:47:16 +00:00
Reid Spencer 6bc24e4e65 * Document how to turn on doxygen documentation generation
* Document the new "LLVMLIBS=JIT" feature to make building JIT programs
  super easy.

llvm-svn: 18338
2004-11-29 07:44:51 +00:00
Reid Spencer 5686dc714d No longer necessary, moved Makefile.rules
llvm-svn: 18337
2004-11-29 07:17:31 +00:00
Reid Spencer bb9932c96a Use LLVMLIBS=JIT to get JIT libraries
llvm-svn: 18333
2004-11-29 07:17:18 +00:00
Reid Spencer af4495a8c4 Incorporate tools/Makefile.JIT
llvm-svn: 18332
2004-11-29 07:17:07 +00:00
Reid Spencer 3ec3fc9870 Make sure the program's symbols can be dlsym'd as well.
llvm-svn: 18331
2004-11-29 06:23:19 +00:00
Chris Lattner f9c5dc9fb4 Revamp long/ulong comparisons to use a much more efficient sequence (thanks
to Brian and the Sun compiler for pointing out that the obvious works :)

This also enables folding all long comparisons into setcc and branch
instructions: before we could only do == and !=

For example, for:
void test(unsigned long long A, unsigned long long B) {
   if (A < B) foo();
 }

We now generate:

test:
        subl $4, %esp
        movl %esi, (%esp)
        movl 8(%esp), %eax
        movl 12(%esp), %ecx
        movl 16(%esp), %edx
        movl 20(%esp), %esi
        subl %edx, %eax
        sbbl %esi, %ecx
        jae .LBBtest_2  # UnifiedReturnBlock
.LBBtest_1:     # then
        call foo
        movl (%esp), %esi
        addl $4, %esp
        ret
.LBBtest_2:     # UnifiedReturnBlock
        movl (%esp), %esi
        addl $4, %esp
        ret

Instead of:

test:
        subl $12, %esp
        movl %esi, 8(%esp)
        movl %ebx, 4(%esp)
        movl 16(%esp), %eax
        movl 20(%esp), %ecx
        movl 24(%esp), %edx
        movl 28(%esp), %esi
        cmpl %edx, %eax
        setb %al
        cmpl %esi, %ecx
        setb %bl
        cmove %ax, %bx
        testb %bl, %bl
        je .LBBtest_2   # UnifiedReturnBlock
.LBBtest_1:     # then
        call foo
        movl 4(%esp), %ebx
        movl 8(%esp), %esi
        addl $12, %esp
        ret
.LBBtest_2:     # UnifiedReturnBlock
        movl 4(%esp), %ebx
        movl 8(%esp), %esi
        addl $12, %esp
        ret

llvm-svn: 18330
2004-11-29 05:55:24 +00:00
Reid Spencer fc66af4476 * Allow date command to be printed in verbose mode
* Get rid of appending -lbz2 and -lz to ExtraLibs now that we don't need
  them any more.
* Fix the dist-check target so that EXTRA_DIST can be defined AFTER the
  include of Makefile.common. This is needed because Makefile.common
  provides variable definitions that may need to be used in computing the
  value of EXTRA_DIST.
* Clean up some "distdir" target output.

llvm-svn: 18329
2004-11-29 05:00:33 +00:00