Daniel Dunbar
eebf029d1d
OptParser: Emit HelpText field for option groups.
...
llvm-svn: 90599
2009-12-04 21:41:24 +00:00
Mikhail Glushenkov
ed163ed103
Forward -save-temps to llvm-gcc.
...
llvm-svn: 90214
2009-12-01 06:51:30 +00:00
Eric Christopher
d6206a8b00
Add a soft link so that in an apple style build we can find libLTO.dylib.
...
llvm-svn: 90189
2009-12-01 02:26:01 +00:00
Daniel Dunbar
53b95c4080
Fix FileCheck crash when fuzzy scanning starting at the end of the file.
...
llvm-svn: 90065
2009-11-29 08:30:24 +00:00
Daniel Dunbar
e502433d7f
Sketch TableGen disassembler emitter, based on patch by Sean Callanan.
...
llvm-svn: 89833
2009-11-25 02:13:23 +00:00
Dan Gohman
cfb181d3cb
Delete some dead and non-obvious code.
...
llvm-svn: 89729
2009-11-24 01:48:15 +00:00
Dan Gohman
de5dea869f
Remove ISD::DEBUG_LOC and ISD::DBG_LABEL, which are no longer used.
...
Note that "hasDotLocAndDotFile"-style debug info was already broken;
people wanting this functionality should implement it in the
AsmPrinter/DwarfWriter code.
llvm-svn: 89711
2009-11-23 23:20:51 +00:00
Daniel Dunbar
fd29d88605
FileCheck, PR5239: Try to find the intended match on failures, but looking for a
...
good nearby fuzzy match. Frequently the input is nearly correct, and just
showing the user the a nearby sensible match is enough to diagnose the problem.
- The "fuzzyness" is pretty simple and arbitrary, but worked on my three test
cases. If you encounter problems, or places you think FileCheck should have
guessed but didn't, please add test cases to PR5239.
For example, previously FileCheck would report this:
--
t.cpp:21:55: error: expected string not found in input
// CHECK: define void @_Z2f25f2_s1([[i64_i64_ty]] %a0)
^
<stdin>:19:30: note: scanning from here
define void @_Z2f15f1_s1(%1) nounwind {
^
<stdin>:19:30: note: with variable "i64_i64_ty" equal to "%0"
--
and now it also reports this:
--
<stdin>:27:1: note: possible intended match here
define void @_Z2f25f2_s1(%0) nounwind {
^
--
which makes it clear that the CHECK just has an extra ' %a0' in it, without
having to check the input.
llvm-svn: 89631
2009-11-22 22:59:26 +00:00
Daniel Dunbar
e0ef65aba4
FileCheck: When a string using variable references fails to match, print
...
additional information about the current definitions of the variables used in
the string.
llvm-svn: 89628
2009-11-22 22:08:06 +00:00
Daniel Dunbar
57cb733b46
Allow '_' in FileCheck variable names, it is nice to have at least one
...
separate character.
- Chris, OK?
llvm-svn: 89626
2009-11-22 22:07:50 +00:00
Bob Wilson
7248f86432
Fix whitespace.
...
llvm-svn: 89582
2009-11-22 04:24:42 +00:00
Bob Wilson
67e6cab49f
Fix pr5470. Tablegen handles template arguments by temporarily setting their
...
values, resolving references to them, and then removing the definitions.
If a template argument is set to an undefined value, we need to resolve
references to that argument to an explicit undefined value. The current code
leaves the reference to the template argument as it is, which causes an
assertion failure later when the definition of the template argument is
removed.
llvm-svn: 89581
2009-11-22 03:58:57 +00:00
Bob Wilson
159905a766
Fix some spelling in comments.
...
llvm-svn: 89566
2009-11-21 22:44:20 +00:00
Bob Wilson
3b793a4dc9
Avoid a redundant assertion.
...
llvm-svn: 89565
2009-11-21 22:39:27 +00:00
Daniel Dunbar
73cb65f704
TableGen/OptParser: When ordering options, make "sentinel" options appear before
...
everything else.
llvm-svn: 89368
2009-11-19 18:22:16 +00:00
Douglas Gregor
361a376879
De-bork CMake build
...
llvm-svn: 89272
2009-11-18 23:20:09 +00:00
Daniel Dunbar
57ee0b0be3
TableGen: Add initial backend for clang Driver's option parsing.
...
llvm-svn: 89245
2009-11-18 21:29:51 +00:00
Daniel Dunbar
a5b5be1815
lit: Fix exclude dirs functionality.
...
llvm-svn: 89210
2009-11-18 17:42:17 +00:00
Jeffrey Yasskin
10d3604a9e
Make X86-64 in the Large model always emit 64-bit calls.
...
The large code model is documented at
http://www.x86-64.org/documentation/abi.pdf and says that calls should
assume their target doesn't live within the 32-bit pc-relative offset
that fits in the call instruction.
To do this, we turn off the global-address->target-global-address
conversion in X86TargetLowering::LowerCall(). The first attempt at
this broke the lazy JIT because it can separate the movabs(imm->reg)
from the actual call instruction. The lazy JIT receives the address of
the movabs as a relocation and needs to record the return address from
the call; and then when that call happens, it needs to patch the
movabs with the newly-compiled target. We could thread the call
instruction into the relocation and record the movabs<->call mapping
explicitly, but that seems to require at least as much new
complication in the code generator as this change.
To fix this, we make lazy functions _always_ go through a call
stub. You'd think we'd only have to force lazy calls through a stub on
difficult platforms, but that turns out to break indirect calls
through a function pointer. The right fix for that is to distinguish
between calls and address-of operations on uncompiled functions, but
that's complex enough to leave for someone else to do.
Another attempt at this defined a new CALL64i pseudo-instruction,
which expanded to a 2-instruction sequence in the assembly output and
was special-cased in the X86CodeEmitter's emitInstruction()
function. That broke indirect calls in the same way as above.
This patch also removes a hack forcing Darwin to the small code model.
Without far-call-stubs, the small code model requires things of the
JITMemoryManager that the DefaultJITMemoryManager can't provide.
Thanks to echristo for lots of testing!
llvm-svn: 88984
2009-11-16 22:41:33 +00:00
Daniel Dunbar
9a61bd5022
lit: Factor a new OneCommandPerFileTest out of SyntaxCheckTest.
...
- Used for running a single fixed command on a directory of files, with the
option of deriving a temporary input file from the test source.
llvm-svn: 88844
2009-11-15 08:10:29 +00:00
Daniel Dunbar
d4764717de
Remove duplicate implementation of excludes functionality, and support excluding
...
dirnames.
Also, add support for the 'unsupported' config property.
llvm-svn: 88838
2009-11-15 07:22:58 +00:00
Daniel Dunbar
ad6c15465c
lit: Add --repeat=N option, for running each test N times.
...
- Currently just useful for timing, although it could be extended as one (bad) way to deal with flaky tests.
llvm-svn: 88827
2009-11-15 01:02:09 +00:00
Benjamin Kramer
8c19a8f17b
Implement DISABLE_INLINE for MSVC. This required changing the position in all
...
forward declaration and patching tblgen to emit it right. Patch by Amine Khaldi!
llvm-svn: 88798
2009-11-14 16:37:18 +00:00
Evan Cheng
16797a1f55
Added getSubRegIndex(A,B) that returns subreg index of A to B. Use it to replace broken code in VirtRegRewriter.
...
llvm-svn: 88753
2009-11-14 03:42:17 +00:00
Sandeep Patel
598825e832
Show command-line args and features passed into backend in debug output. Approved by Evan Cheng.
...
llvm-svn: 86797
2009-11-11 03:23:46 +00:00
Daniel Dunbar
8acffa7dd5
lit: Add ExampleTests, for testing lit and demonstrating test suite features.
...
llvm-svn: 86654
2009-11-10 02:41:17 +00:00
Daniel Dunbar
4010a04034
lit: Fix bug in --show-suites which accidentally override the list of tests.
...
llvm-svn: 86653
2009-11-10 02:40:21 +00:00
Daniel Dunbar
2edf3a4896
Add a 'zkill' script, which is more-or-less a fancy (although not necessarily
...
very robust) version of killall. Because I like making shiny new wheels out of
spare parts.
For use by buildbots when people insist on making cc1 infinite loop. :)
llvm-svn: 86484
2009-11-08 21:51:53 +00:00
Anton Korobeynikov
dc2beaa05e
It is invalid to infer the value type from the result #0 of the node
...
since the instruction might use the other result of different type.
llvm-svn: 86462
2009-11-08 12:14:54 +00:00
Daniel Dunbar
e34c1d8b44
NNT: Remove DejaGNU test from NewNightlyTest reports, this aspect of testing is
...
handled by buildbots now.
llvm-svn: 86454
2009-11-08 09:34:14 +00:00
Daniel Dunbar
42c19ee140
lit: Hardcode whence seek value, os.SEEK_END isn't always available.
...
llvm-svn: 86449
2009-11-08 09:07:33 +00:00
Daniel Dunbar
3d861af58a
lit: Warn when a test suite contains no tests.
...
llvm-svn: 86448
2009-11-08 09:07:26 +00:00
Daniel Dunbar
6ff773bd21
lit: Drop require_and_and support.
...
llvm-svn: 86447
2009-11-08 09:07:13 +00:00
Daniel Dunbar
80ec848944
lit: Workaround a Win32/subprocess bug when appending.
...
llvm-svn: 86437
2009-11-08 03:43:06 +00:00
Daniel Dunbar
107a38dafc
lit: Preserve the PATHEXT variable when running subcommands, this is important on Win32
...
llvm-svn: 86436
2009-11-08 03:35:19 +00:00
Chris Lattner
81f1b31c96
clang++ points out that this is pointless.
...
llvm-svn: 86239
2009-11-06 06:33:01 +00:00
Daniel Dunbar
529f913f55
NewNighlytTest: Fix timestamp format to actually make sense (it was missing the hour).
...
llvm-svn: 86229
2009-11-06 04:12:13 +00:00
Daniel Dunbar
04b3960bfe
NewNightlyTest: Add -noclean option, which doesn't run 'make clean' before building LLVM (for testing).
...
Also, switch to always running 'make clean' in the test-suite directories.
llvm-svn: 86228
2009-11-06 04:12:07 +00:00
Daniel Dunbar
9e0febb2c7
NewNightlyTest: Unbreak passing the build directory via a positional argument.
...
llvm-svn: 86227
2009-11-06 04:12:02 +00:00
Daniel Dunbar
545ffe6fc1
NewNightlyTest: Add -llvmgccdir as alternative to environment variable.
...
llvm-svn: 86226
2009-11-06 04:11:29 +00:00
Dan Gohman
701e4e9b2b
Don't print a redundant tab for inline asm, and do use the new printKill.
...
llvm-svn: 86206
2009-11-06 00:19:43 +00:00
Douglas Gregor
86a947dde9
Teach lit's SyntaxCheckTest two new tricks:
...
- skip .svn directories
- add a set of excluded filenames so we can easily skip tests
llvm-svn: 86185
2009-11-05 22:58:04 +00:00
Daniel Dunbar
1891a167a1
lit: Add --param NAME=VALUE option, for test suite specific use (to communicate
...
arbitrary command line arguments to the test suite).
llvm-svn: 86137
2009-11-05 16:27:33 +00:00
Evan Cheng
531045d554
Look for llvm-gcc under /Developer/usr/bin first.
...
llvm-svn: 86023
2009-11-04 08:36:50 +00:00
Bill Wendling
2c76d6dcea
Use llvm-gcc on newer Darwins.
...
llvm-svn: 85963
2009-11-03 22:50:10 +00:00
Chris Lattner
9e69536607
mark some constant global const.
...
llvm-svn: 85910
2009-11-03 18:30:31 +00:00
Daniel Dunbar
12454b8e0f
lit: Update Clang's test style to use XFAIL: and XTARGET: lines that match
...
LLVM's tests.
llvm-svn: 85882
2009-11-03 07:26:38 +00:00
Ted Kremenek
a6484f4208
Support updating 'llvm_add_target' lists as well.
...
llvm-svn: 85860
2009-11-03 04:06:58 +00:00
Jim Grosbach
923cf49e6d
Missing bit of universal built + hosted
...
llvm-svn: 85785
2009-11-02 03:46:35 +00:00
Anton Korobeynikov
0f38d989bd
Do not infer the target type for COPY_TO_REGCLASS from dest regclass, this won't work if it can contain several types. Require explicit result type for the node for now. This fixes PR5364.
...
PS: It seems that blackfin usage of copy_to_regclass is completely bogus!
llvm-svn: 85766
2009-11-02 00:11:39 +00:00
Jim Grosbach
7a949d8b05
The universal SDKROOT should only be assigned when hosted. Otherwise the
...
SDKROOT can refer to the target when we're building for the host.
llvm-svn: 85672
2009-10-31 18:00:10 +00:00
Jim Grosbach
dc916f11b5
Allow cross target build
...
llvm-svn: 85611
2009-10-30 20:54:59 +00:00
Dan Gohman
6c9388011b
Initial target-independent CodeGen support for BlockAddresses.
...
llvm-svn: 85556
2009-10-30 01:27:03 +00:00
Dan Gohman
554a75a973
Move some code from being emitted as boilerplate duplicated in every
...
*ISelDAGToDAG.cpp to being regular code in SelectionDAGISel.cpp.
llvm-svn: 85530
2009-10-29 22:30:23 +00:00
Dan Gohman
453d64c9f5
Rename usesCustomDAGSchedInserter to usesCustomInserter, and update a
...
bunch of associated comments, because it doesn't have anything to do
with DAGs or scheduling. This is another step in decoupling MachineInstr
emitting from scheduling.
llvm-svn: 85517
2009-10-29 18:10:34 +00:00
Johnny Chen
8107289624
Sorry to break the build.
...
I was trying to check the WIP file to some local repository, but ended up
checking in the llvm repository. Oops!
llvm-svn: 85470
2009-10-29 02:04:53 +00:00
Johnny Chen
c3d9a47d03
Minor tweak to forgo the the curly braces for most case blocks, except when
...
declaring local variables.
llvm-svn: 85467
2009-10-29 01:45:07 +00:00
Dan Gohman
d7db2dedaa
Add indirectbr and blockaddress to the vim syntax highlighting file.
...
llvm-svn: 85451
2009-10-29 00:14:44 +00:00
Mikhail Glushenkov
b7f7673feb
80-col violation.
...
llvm-svn: 85215
2009-10-27 09:02:49 +00:00
Julien Lerouge
d0c160e36c
Remove / use flags that are now set in the Makefile.config.
...
llvm-svn: 85149
2009-10-26 20:01:35 +00:00
Chandler Carruth
56869f22c4
Move DataTypes.h to include/llvm/System, update all users. This breaks the last
...
direct inclusion edge from System to Support.
llvm-svn: 85086
2009-10-26 01:35:46 +00:00
Daniel Dunbar
a4ea29e362
lit: Add --config-prefix option, to override default config file names.
...
llvm-svn: 85035
2009-10-25 03:30:55 +00:00
Daniel Dunbar
768251875c
lit: Allow use of /dev/null in redirects on Windows (replace by a temporary
...
file).
llvm-svn: 85028
2009-10-25 01:37:26 +00:00
Dan Gohman
e155f8646c
Delete a spurious semicolon.
...
llvm-svn: 85018
2009-10-24 23:24:45 +00:00
Daniel Dunbar
75a9d64041
lit: Support '>>' redirections when executing scripts internally.
...
llvm-svn: 85014
2009-10-24 20:32:49 +00:00
Victor Hernandez
e297149e26
Auto-upgrade free instructions to calls to the builtin free function.
...
Update all analysis passes and transforms to treat free calls just like FreeInst.
Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised.
llvm-svn: 84987
2009-10-24 04:23:03 +00:00
Stuart Hastings
8de31d0e80
Trying again to tweak the top-level Makefile to facilitate an Apple-style build.
...
Now with Clang-compatibility.
llvm-svn: 84872
2009-10-22 17:22:37 +00:00
Mikhail Glushenkov
3b3e9a1c27
Make 'unset_option' work on list options.
...
llvm-svn: 84827
2009-10-22 04:15:07 +00:00
Chris Lattner
439fa3eddd
Set comment string, patch by Johnny Chen!
...
llvm-svn: 84743
2009-10-21 05:07:57 +00:00
Mikhail Glushenkov
456d734945
Implement any_[not_]empty and list versions of switch_on and [not_]empty.
...
Useful for OptionPreprocessor.
llvm-svn: 84728
2009-10-21 02:13:13 +00:00
Daniel Dunbar
2cb87a9b8f
NNT: Implement "config mode", use -config path/to/llvm-config
...
- This runs the nightly test and does all the submission logic, but using the
LLVM build specified by the llvm-config.
- Useful for, among other things, testing NNT itself.
llvm-svn: 84620
2009-10-20 07:30:54 +00:00
Daniel Dunbar
5e64fd3e1e
NNT: Remove unused BUILDTYPE argument.
...
llvm-svn: 84619
2009-10-20 07:30:46 +00:00
Daniel Dunbar
074d8810cd
Revert "Tweak top-level Makefile to facilitate Apple-style build.", this is
...
breaking Clang's Apple-style build.
llvm-svn: 84592
2009-10-20 02:23:13 +00:00
Daniel Dunbar
e97680f7b9
NNT: Remove duplicate verbose print.
...
llvm-svn: 84591
2009-10-20 02:23:05 +00:00
Mikhail Glushenkov
9abd706881
More refactoring...
...
llvm-svn: 84537
2009-10-19 21:24:28 +00:00
Stuart Hastings
a19596bf64
Tweak top-level Makefile to facilitate Apple-style build.
...
llvm-svn: 84507
2009-10-19 17:53:54 +00:00
Daniel Dunbar
1c20540ca5
NNT: Add -parallel-test option, which runs llvm-test with
...
ENABLE_PARALLEL_REPORT.
llvm-svn: 84497
2009-10-19 13:20:56 +00:00
Daniel Dunbar
74e154d5d1
NNT: Don't hard code -l3.0 argument to make, this is very server dependent. Users who care can use -compileflags for this.
...
Also, fix make clean call and a few other tweaks.
llvm-svn: 84496
2009-10-19 13:20:50 +00:00
Daniel Dunbar
714457f2b1
NNT: Fix refactoro, I dropped the list of all (llvm-test) tests. I'm sure it was named dejagnu_test_list for a good reason.
...
llvm-svn: 84495
2009-10-19 13:20:44 +00:00
Daniel Dunbar
4ca4a76a39
NNT: Lift conditional logic out of test steps.
...
llvm-svn: 84494
2009-10-19 13:20:38 +00:00
Daniel Dunbar
1f0bfb335c
NNT: Now that build & test steps are factored out, coalesce all the logic together.
...
llvm-svn: 84493
2009-10-19 13:20:31 +00:00
Daniel Dunbar
4e8afa9096
NNT: Sink code for running nightly test into subroutine.
...
llvm-svn: 84492
2009-10-19 13:20:25 +00:00
Daniel Dunbar
b9d15d60b1
NNT: Tweaks and simplifications.
...
- Split out configure log.
- Kill off GetRegexNum.
- Fix GetRegex to not return previous match on failure.
- Remove dead code.
llvm-svn: 84491
2009-10-19 13:20:19 +00:00
Daniel Dunbar
8fd172e0eb
NNT: Move build code into subroutine.
...
llvm-svn: 84490
2009-10-19 13:20:13 +00:00
Daniel Dunbar
98d5036183
NNT: Move source checkout code into subroutine.
...
llvm-svn: 84489
2009-10-19 13:20:06 +00:00
Daniel Dunbar
47d021bc25
NNT: Remove .{o,a} size info, this is better tracked elsewhere.
...
llvm-svn: 84488
2009-10-19 13:20:00 +00:00
Daniel Dunbar
070314ef26
NNT: Remove code to track build warnings, the buildbots cover this.
...
llvm-svn: 84487
2009-10-19 13:19:53 +00:00
Daniel Dunbar
27c4e8830b
NNT: Remove hard coded BuildDir and WebDir, users should have to specify these.
...
llvm-svn: 84481
2009-10-19 09:19:19 +00:00
Daniel Dunbar
0c2dc674de
NNT: Remove "CVS Stats", this isn't particularly useful and can be better done by the server or user.
...
llvm-svn: 84480
2009-10-19 09:19:09 +00:00
Daniel Dunbar
4cceb73a71
NNT: Remove now-unused -cvstag argument and CVSROOT code.
...
llvm-svn: 84479
2009-10-19 09:18:54 +00:00
Daniel Dunbar
029162a1ad
NNT: Remove -usecvs option, this is very old.
...
llvm-svn: 84478
2009-10-19 09:18:46 +00:00
Daniel Dunbar
d081488280
NNT: Remove -debug argument, it is unused.
...
llvm-svn: 84477
2009-10-19 09:18:37 +00:00
Daniel Dunbar
4d9fb871d2
Regroup NewNightlyTest.pl options
...
llvm-svn: 84476
2009-10-19 09:18:24 +00:00
Daniel Dunbar
7e8cf910e4
lit: When running Tcl scripts via shell, try harder to find 'bash', but fall
...
back to running them internally if that fails. PR5240.
llvm-svn: 84462
2009-10-19 03:54:21 +00:00
Mikhail Glushenkov
7d2019f9b3
Refactoring, no functionality change.
...
llvm-svn: 84450
2009-10-18 22:51:30 +00:00
Jeffrey Yasskin
35ec32d397
Support GoogleTest's "typed tests"
...
(http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide#Typed_Tests )
in lit.py. These tests have names like "ValueMapTest/0.Iteration", which broke
when lit.py os.path.join()ed them onto the path and then assumed it could
os.path.split() them back off. This patch shifts path components from the
testPath to the testName until the testPath exists.
llvm-svn: 84387
2009-10-18 02:05:42 +00:00
Daniel Dunbar
04f049f2f5
Move UnescapeString to a static function for its sole client; its inefficient and broken.
...
llvm-svn: 84358
2009-10-17 20:43:42 +00:00
Daniel Dunbar
8eff29d805
Use raw_ostream::write_escaped instead of EscapeString.
...
llvm-svn: 84356
2009-10-17 20:43:19 +00:00
Mikhail Glushenkov
867f67301b
First draft of the OptionPreprocessor.
...
More to follow...
llvm-svn: 84352
2009-10-17 20:09:29 +00:00
Mikhail Glushenkov
ac90b38c48
This variable is never used.
...
llvm-svn: 84351
2009-10-17 20:08:47 +00:00