Chris Lattner
5234733554
fix bugs in push/pop segment support, rdar://8407242
...
llvm-svn: 113422
2010-09-08 22:13:08 +00:00
Bill Wendling
2c5754557c
Remove --with-gxx-include-dir option because it's causing problems on non-Darwin platforms.
...
llvm-svn: 113401
2010-09-08 20:21:11 +00:00
Bill Wendling
ecd5222209
Add an option to not test ObjC for those platforms which don't support it.
...
llvm-svn: 113398
2010-09-08 20:09:14 +00:00
Duncan Sands
e1a9a9bb8f
Correct variable name.
...
llvm-svn: 113395
2010-09-08 19:58:15 +00:00
Duncan Sands
5a2b5dea98
Move the number of cpus logic to somewhere more logical.
...
llvm-svn: 113393
2010-09-08 19:50:25 +00:00
Bill Wendling
a83eb43cb8
A script that tests a certain release candidate in several modes. It does a
...
2-phase build of llvm and llvm-gcc, similar to what the buildbots do, and runs
the regression testsuite.
Things to do:
- Work out some bugs with llvm-gcc flags.
- Not all platforms support ObjC.
- Run the test-suite.
llvm-svn: 113382
2010-09-08 18:32:31 +00:00
Bill Wendling
9bb7ac566f
Add an MVT::x86mmx type. It will take the place of all current MMX vector types.
...
llvm-svn: 113261
2010-09-07 20:03:56 +00:00
Bill Wendling
601bbfe6e3
Fix whitespace, because I'm OCD.
...
llvm-svn: 113250
2010-09-07 18:49:14 +00:00
Dale Johannesen
8354cab2de
Add patterns for MMX that use the new intrinsics.
...
Enable palignr intrinsic.
These may need adjustment for a new VT in due course.
llvm-svn: 113233
2010-09-07 18:10:56 +00:00
Chris Lattner
bdedd983a9
attempt to appease msvc
...
llvm-svn: 113198
2010-09-07 06:10:48 +00:00
Gabor Greif
cb72b44075
fix comment typos
...
llvm-svn: 113197
2010-09-07 06:06:06 +00:00
Chris Lattner
9f2c0da214
generalize my previous operand loc info hack. If the same operand
...
is busted for all variants, report it as the location. This allows
us to get the operand right for bugs like:
t.s:3:12: error: invalid operand for instruction
outb %al, %gs
^
Even though there are reg/imm and reg/reg forms of this instruction.
llvm-svn: 113183
2010-09-06 23:37:39 +00:00
Chris Lattner
6bfa0d9988
in the case where an instruction only has one implementation
...
of a mneumonic, report operand errors with better location
info. For example, we now report:
t.s:6:14: error: invalid operand for instruction
cwtl $1
^
but we fail for common cases like:
t.s:11:4: error: invalid operand for instruction
addl $1, $1
^
because we don't know if this is supposed to be the reg/imm or imm/reg
form.
llvm-svn: 113178
2010-09-06 22:11:18 +00:00
Chris Lattner
bb5e19cb63
Now that we know if we had a total fail on the instruction mnemonic,
...
give a more detailed error. Before:
t.s:11:4: error: unrecognized instruction
addl $1, $1
^
t.s:12:4: error: unrecognized instruction
f2efqefa $1
^
After:
t.s:11:4: error: invalid operand for instruction
addl $1, $1
^
t.s:12:4: error: invalid instruction mnemonic 'f2efqefa'
f2efqefa $1
^
This fixes rdar://8017912 - llvm-mc says "unrecognized instruction" when it means "invalid operands"
llvm-svn: 113176
2010-09-06 21:54:15 +00:00
Chris Lattner
fd211fc740
simplify DEBUG_WITH_TYPE usage
...
llvm-svn: 113174
2010-09-06 21:28:52 +00:00
Chris Lattner
4a6911275e
this if can now be an assert.
...
llvm-svn: 113173
2010-09-06 21:25:43 +00:00
Chris Lattner
90ef8a5d5a
;
...
llvm-svn: 113172
2010-09-06 21:23:43 +00:00
Chris Lattner
7b80f3c39c
now that the opcode is trivially exposed, start matching instructions
...
by doing a binary search over the mnemonic instead of doing a linear
search through all possible instructions. This implements rdar://7785064
llvm-svn: 113171
2010-09-06 21:22:45 +00:00
Chris Lattner
e443a993fb
emit the match table at global scope instead of within the
...
MatchInstructionImpl. This makes it easier to read/understand
MatchInstructionImpl.
llvm-svn: 113170
2010-09-06 21:08:38 +00:00
Chris Lattner
d323dac9bd
special case the mnemonic operand of the instruction in the
...
generated matcher, emiting it as a column in the MatchEntry
table instead of forcing it to go through classification and
everything else. Making it be classified caused tblgen to
produce a ton of one-off classes for each mneumonic. This
should reduce the size of the generated matcher significantly
while paving the way for future improvements.
llvm-svn: 113169
2010-09-06 21:01:37 +00:00
Chris Lattner
72d2fb8001
The "ambiguous instructions" check only produces anything with -debug,
...
so only do the N^2 loop with debug mode.
llvm-svn: 113168
2010-09-06 20:21:47 +00:00
Chris Lattner
68f7c5b750
have tblgen detect when an instruction would have matched, but
...
failed because a subtarget feature was not enabled. Use this to
remove a bunch of hacks from the X86AsmParser for rejecting things
like popfl in 64-bit mode. Previously these hacks weren't needed,
but were important to get a message better than "invalid instruction"
when used in the wrong mode.
This also fixes bugs where pushal would not be rejected correctly in
32-bit mode (just pusha).
llvm-svn: 113166
2010-09-06 20:08:02 +00:00
Chris Lattner
22bb9cb511
change MatchInstructionImpl to return an enum instead of bool.
...
llvm-svn: 113165
2010-09-06 19:22:17 +00:00
Chris Lattner
45a204be76
have AsmMatcherEmitter.cpp produce the hunk of code that gets included
...
into the middle of the class, and rework how the different sections of
the generated file are conditionally included for simplicity.
llvm-svn: 113163
2010-09-06 19:11:01 +00:00
Chris Lattner
1f45ad0aba
emit the LLVM intrinsic name -> intrinsic number mapping table with
...
StringMatcher instead of a linear sequence of memcmps.
llvm-svn: 113145
2010-09-06 03:58:45 +00:00
Chris Lattner
8615b37209
allow specifying an indentation level for the string matcher.
...
llvm-svn: 113143
2010-09-06 03:50:59 +00:00
Chris Lattner
8d0ee62652
emit the __builtin -> intrinsic map with StringMatcher instead of a
...
copy of a close relative of it.
llvm-svn: 113142
2010-09-06 03:14:45 +00:00
Chris Lattner
81f696e142
same bug, another place.
...
llvm-svn: 113141
2010-09-06 03:12:27 +00:00
Chris Lattner
6075477174
fix a critical bug where the generated table would say
...
"1 strings to match" in a comment, which isn't gramatic.
llvm-svn: 113140
2010-09-06 03:11:10 +00:00
Chris Lattner
b58e070f0c
update cmake
...
llvm-svn: 113139
2010-09-06 02:58:25 +00:00
Chris Lattner
df487455cb
factor the snazzy string matcher code that Daniel hates
...
out of AsmMatcherEmitter.cpp into its own class.
llvm-svn: 113137
2010-09-06 02:01:51 +00:00
Chris Lattner
9feb462669
slightly improve the runtime and code size of the Intrinsics info table by not
...
comparing the "llvm." prefix in the memcmp, and not storing it in the string literal.
llvm-svn: 113136
2010-09-06 01:44:44 +00:00
Chris Lattner
c3d0385834
delete dead code.
...
llvm-svn: 113075
2010-09-04 18:17:16 +00:00
Chris Lattner
f92de84645
zap dead code.
...
llvm-svn: 113071
2010-09-04 17:45:58 +00:00
David Greene
903408c475
Generalize getFieldType to work on all TypedInits. Add a couple of testcases from
...
Amaury Pouly.
llvm-svn: 113010
2010-09-03 21:00:49 +00:00
Dan Gohman
a936c04eeb
Remove a TODO comment; this is now filed in bugzilla (PR8005).
...
llvm-svn: 112982
2010-09-03 18:06:11 +00:00
Jakob Stoklund Olesen
9f5c5e6e85
Stop emitting predicate functions. They are no longer used.
...
llvm-svn: 112924
2010-09-03 00:39:50 +00:00
Chris Lattner
97758ab924
remove dead code.
...
llvm-svn: 112707
2010-09-01 15:39:31 +00:00
Dan Gohman
f9e09104f1
Make tool_output_file's raw_ostream instance a member variable instead
...
of a base class.
This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.
llvm-svn: 112706
2010-09-01 14:20:41 +00:00
Dan Gohman
8507175536
Don't worry about union types.
...
llvm-svn: 112427
2010-08-29 14:50:21 +00:00
Dan Gohman
d499f5cbb9
Remove obsolete keywords which are no longer relevant.
...
llvm-svn: 112382
2010-08-28 20:14:05 +00:00
Dan Gohman
d8226c08e0
Remove unions from the vim syntax highlighting.
...
llvm-svn: 112381
2010-08-28 20:11:28 +00:00
Chris Lattner
7a86b354fc
more dead thing zapping.
...
llvm-svn: 112353
2010-08-28 03:43:50 +00:00
Chris Lattner
faae20ef23
zap dead method
...
llvm-svn: 112352
2010-08-28 03:42:45 +00:00
Bob Wilson
d107dd5cd2
Fix a comment typo.
...
llvm-svn: 112302
2010-08-27 21:56:59 +00:00
Dan Gohman
f6ecd7a378
Clarify a comment.
...
llvm-svn: 112266
2010-08-27 15:16:40 +00:00
Dan Gohman
c285419f99
Parse " (Hidden)" and cope with it.
...
llvm-svn: 112265
2010-08-27 15:16:09 +00:00
Dan Gohman
d6ec79c6e8
Default to looking for clang++ in the PATH, rather than trying to
...
guess a path that will work.
llvm-svn: 112264
2010-08-27 15:15:31 +00:00
Dan Gohman
478e9347be
Experimental clang-based code-completion support for vim. This currently
...
depends on some clang patches which are not yet upstream.
llvm-svn: 112204
2010-08-26 18:12:22 +00:00
Eric Christopher
7637f43217
Allow strict subclasses of register classes, this way we can handle
...
ARM instructions with:
foo GPR, rGPR
which happens a lot.
llvm-svn: 112025
2010-08-25 04:58:56 +00:00