Mikhail Glushenkov
ae551a012d
Documentation update.
...
llvm-svn: 51753
2008-05-30 06:25:24 +00:00
Mikhail Glushenkov
c8bd3517d5
A small optimization: use static char* array instead of StrVector.
...
llvm-svn: 51752
2008-05-30 06:24:49 +00:00
Mikhail Glushenkov
bf14dd7dc3
Make it possible to test if the '-o' option is provided.
...
The following is now allowed:
(case (not_empty "o"), do_something, ...)
This didn't work previously because "-o" is built-in.
llvm-svn: 51751
2008-05-30 06:24:07 +00:00
Mikhail Glushenkov
f83f33e8d3
Fix: 'sink' handling was broken.
...
llvm-svn: 51750
2008-05-30 06:23:29 +00:00
Mikhail Glushenkov
b043663cf9
Add support for option aliases.
...
llvm-svn: 51749
2008-05-30 06:22:52 +00:00
Mikhail Glushenkov
bf1552d866
Allow nesting of case expressions.
...
The following is now legal:
(case (in_language "c"),
(case (switch_on "E"), "gcc -x c -E $INFILE", (default), "gcc -x c $INFILE"),
(default),
"gcc $INFILE $OUTFILE")
llvm-svn: 51748
2008-05-30 06:22:15 +00:00
Mikhail Glushenkov
d1a6a34cc5
Small error message improvement.
...
llvm-svn: 51747
2008-05-30 06:21:48 +00:00
Mikhail Glushenkov
763cc577b3
Remove RequireDefault parameter from EmitCaseConstructHandler.
...
There are now no situations when 'default' is required.
llvm-svn: 51746
2008-05-30 06:21:21 +00:00
Mikhail Glushenkov
5916ade717
Fix some headers.
...
llvm-svn: 51745
2008-05-30 06:20:54 +00:00
Mikhail Glushenkov
2f51489a62
New tests for the 'case' expression: not_empty, in_language.
...
llvm-svn: 51744
2008-05-30 06:19:52 +00:00
Mikhail Glushenkov
90777a5b82
-E should print to stdout.
...
llvm-svn: 51743
2008-05-30 06:18:50 +00:00
Mikhail Glushenkov
1f7a028929
Make it possible to have multiple input languages for a single tool.
...
llvm-svn: 51742
2008-05-30 06:18:16 +00:00
Mikhail Glushenkov
73d708b82c
Rename StringVector to StrVector (to be consistent with LLVMCConfigurationEmitter.cpp).
...
llvm-svn: 51741
2008-05-30 06:17:29 +00:00
Mikhail Glushenkov
b2ec0b425b
Minor error message fixes.
...
llvm-svn: 51740
2008-05-30 06:16:59 +00:00
Mikhail Glushenkov
dc45f58905
Documentation and examples improvements
...
llvm-svn: 51739
2008-05-30 06:16:32 +00:00
Mikhail Glushenkov
326d508303
Better error reporting for the 'case' construct.
...
llvm-svn: 51738
2008-05-30 06:15:47 +00:00
Mikhail Glushenkov
9e58d5958f
Do not generate empty 'if's for the output_suffix property.
...
llvm-svn: 51737
2008-05-30 06:15:20 +00:00
Mikhail Glushenkov
490692c1d1
Update documentation, add examples.
...
llvm-svn: 51736
2008-05-30 06:14:42 +00:00
Mikhail Glushenkov
0ec82aff72
Rename LLVMC-Tutorial.rst to LLVMC-Reference.rst
...
llvm-svn: 51735
2008-05-30 06:14:01 +00:00
Mikhail Glushenkov
6db24d96cd
Make it possible to use hooks like this: '$CALL(MyHook)/path/to/file'.
...
llvm-svn: 51734
2008-05-30 06:13:29 +00:00
Mikhail Glushenkov
73edde26f0
Make it possible to change the output file suffix based on command-line options.
...
For instance, the following command:
llvmc2 -E hello.c
now generates a file with the correct suffix (hello.i).
llvm-svn: 51733
2008-05-30 06:13:02 +00:00
Mikhail Glushenkov
fc4ed7ad83
Add support for user-provided hooks and environment variable reads to the cmd_line tool property.
...
Used like this: (cmd_line "$CALL(MyHook) --option -o $ENV(VARIABLE) $CALL(AnotherHook)")
Also works with case expressions.
Hook declarations are auto-generated, the definitions should be provided by the user
(just drop a .cpp file in the tools/llvmc2 directory).
Hooks should live in the "hooks" namespace and have type std::string hooks::Hook(void).
llvm-svn: 51732
2008-05-30 06:12:24 +00:00
Mikhail Glushenkov
550052d0e5
Enable the response file ('llvmc @file') support.
...
llvm-svn: 51731
2008-05-30 06:11:45 +00:00
Mikhail Glushenkov
a06c516cad
Update the code to the fact that StringSet now lives in llvm/ADT.
...
llvm-svn: 51730
2008-05-30 06:11:18 +00:00
Mikhail Glushenkov
f1c87ff378
Some small tweaks to make the generated code prettier.
...
llvm-svn: 51729
2008-05-30 06:10:47 +00:00
Mikhail Glushenkov
e57a403338
Make it possible to use the generalised 'case' construct in the cmd_line property.
...
llvm-svn: 51728
2008-05-30 06:10:19 +00:00
Mikhail Glushenkov
8fedbb7b02
Add a generalised 'case' construct.
...
Besides assigning edge weights, it will also be used by the cmd_line tool property.
llvm-svn: 51727
2008-05-30 06:08:50 +00:00
Nick Lewycky
048fc8db62
Unbreak this test.
...
llvm-svn: 51726
2008-05-30 05:02:37 +00:00
Nick Kledzik
25368998e7
remove the StripSymbolsPass. This should not be done by default in libLTO.dylib. The linker will remove the symbol names if needed after LTO is done
...
llvm-svn: 51722
2008-05-30 00:59:13 +00:00
Dan Gohman
8807147ada
Remove an unused variable.
...
llvm-svn: 51721
2008-05-30 00:56:36 +00:00
Dan Gohman
1418ead225
Fix an error in the comment for APInt::getMinSignedBits.
...
llvm-svn: 51720
2008-05-30 00:46:49 +00:00
Steve Naroff
ec94403018
Add basic support for properties references (a missing feature).
...
While it is far from complete, it does fix the following <rdar://problem/5967199> clang on xcode: error: member reference is not to a structure or union
llvm-svn: 51719
2008-05-30 00:40:33 +00:00
Dan Gohman
be8f77859b
Fix a typo in a comment.
...
llvm-svn: 51718
2008-05-30 00:08:18 +00:00
Dan Gohman
7a68b6694b
Fix a copy+paste error in a comment.
...
llvm-svn: 51717
2008-05-30 00:02:02 +00:00
Dan Gohman
fbfae365f2
Fix doxygen comment syntax.
...
llvm-svn: 51716
2008-05-30 00:01:36 +00:00
Owen Anderson
82fc4cdafb
Make the renumbering correct in the face of deleted instructions that have been removed from the LiveIntervals maps.
...
llvm-svn: 51714
2008-05-29 23:01:22 +00:00
Gabor Greif
7e328fe1a8
add doxygen comments
...
llvm-svn: 51712
2008-05-29 22:58:33 +00:00
Bill Wendling
9cfdac50f1
Unbreak build.
...
llvm-svn: 51709
2008-05-29 22:02:08 +00:00
Anton Korobeynikov
e6f5933e65
Remove guard, so *each* inclusion will result in a warning
...
llvm-svn: 51708
2008-05-29 21:57:11 +00:00
Ted Kremenek
5fc6dc070c
Fix one strict-aliasing warning.
...
llvm-svn: 51707
2008-05-29 21:52:26 +00:00
Dan Gohman
96af4ddb62
Add patterns for CALL32m and CALL64m. They aren't matched in most
...
cases due to an isel deficiency already noted in
lib/Target/X86/README.txt, but they can be matched in this fold-call.ll
testcase, for example.
This is interesting mainly because it exposes a tricky tblgen bug;
tblgen was incorrectly computing the starting index for variable_ops
in the case of a complex pattern.
llvm-svn: 51706
2008-05-29 21:50:34 +00:00
Bill Wendling
33e396d041
Remove more iostream header includes. Needed to implement a "FlushStream"
...
function to flush a specified std::ostream.
llvm-svn: 51705
2008-05-29 21:46:33 +00:00
Bill Wendling
bf5b228c32
Remove <iostream>.
...
llvm-svn: 51704
2008-05-29 21:29:39 +00:00
Steve Naroff
021ca18bb5
- Move ObjC Expresssion AST's from Expr.h => ExprObjC.h
...
- #include ExprObjC.h in many places
llvm-svn: 51703
2008-05-29 21:12:08 +00:00
Owen Anderson
dd378c9ae0
Add newline at end of file.
...
llvm-svn: 51701
2008-05-29 21:05:16 +00:00
Dan Gohman
6e582c449f
Fix a tblgen problem handling variable_ops in tblgen instruction
...
definitions. This adds a new construct, "discard", for indicating
that a named node in the input matching pattern is to be discarded,
instead of corresponding to a node in the output pattern. This
allows tblgen to know where the arguments for the varaible_ops are
supposed to begin.
This fixes "rdar://5791600", whatever that is ;-).
llvm-svn: 51699
2008-05-29 19:57:41 +00:00
Dan Gohman
86ff8536f9
const-ify getOpcode.
...
llvm-svn: 51698
2008-05-29 19:53:46 +00:00
Dan Gohman
18e29d0772
Prune and tidy #includes.
...
llvm-svn: 51697
2008-05-29 19:52:31 +00:00
Dan Gohman
714663ab94
Expand small memmovs using inline code. Set the X86 threshold for expanding
...
memmove to a more plausible value, now that it's actually being used.
llvm-svn: 51696
2008-05-29 19:42:22 +00:00
Anton Korobeynikov
d8734cf916
For PR1338: Rename test dirs
...
llvm-svn: 51695
2008-05-29 19:17:15 +00:00