Kevin Enderby
ba985d9dd5
Added some aliases to the fcomip and fucompi Intel instructions. So that llvm-mc
...
will accept versions that the darwin assembler allows. Forms ending in "pi" and
forms without all the operands.
llvm-svn: 117427
2010-10-27 00:59:28 +00:00
John McCall
6fe024052b
Don't compute linkage for a declaration as part of the #pragma weak
...
forward-declaration support unless there's really a mapping for that
name.
llvm-svn: 117426
2010-10-27 00:59:00 +00:00
Jakob Stoklund Olesen
79e1407c11
Handle critical loop predecessors by making both inside and outside registers
...
live out.
This doesn't prevent us from inserting a loop preheader later on, if that is
better.
llvm-svn: 117424
2010-10-27 00:39:07 +00:00
Jakob Stoklund Olesen
795ed98180
Compute critical loop predecessors in the same way as critical loop exits.
...
Critical edges going into a loop are not as bad as critical exits. We can handle
them by splitting the critical edge, or by having both inside and outside
registers live out of the predecessor.
llvm-svn: 117423
2010-10-27 00:39:05 +00:00
Jakob Stoklund Olesen
0e7a011a00
Physical registers trivially have multiple connected components all the time.
...
Only virtuals should be requires to be connected.
llvm-svn: 117422
2010-10-27 00:39:01 +00:00
Jim Grosbach
2577b2e8b1
One more spot where the new arm mode LDR instruction representation
...
doesn't need the additional addrmode2 register operand. Missed it the first
time around.
llvm-svn: 117421
2010-10-27 00:38:16 +00:00
Wesley Peck
e9b429e96f
Adding disassembler to the MicroBlaze backend.
...
llvm-svn: 117420
2010-10-27 00:23:01 +00:00
Jim Grosbach
5a7c715470
Split ARM::LDRB into LDRBi12 and LDRBrs. Adjust accordingly. Continuing on
...
rdar://8477752.
llvm-svn: 117419
2010-10-27 00:19:44 +00:00
Jim Grosbach
a92801b695
Since I parameterized this bit, I should probably actually use said parameter.
...
llvm-svn: 117418
2010-10-26 23:58:04 +00:00
Caroline Tice
750cd1755d
Clean up the API logging code:
...
- Try to reduce logging to one line per function call instead of tw
- Put all arguments & their values into log for calls
- Add 'this' parameter information to function call logging, making it show the appropriate
internal pointer (this.obj, this.sp, this.ap...)
- Clean up some return values
- Remove logging of constructors that construct empty objects
- Change '==>' to '=>' for showing result values...
- Fix various minor bugs
- Add some protected 'get' functions to help getting the internal pointers for the 'this' arguments...
llvm-svn: 117417
2010-10-26 23:49:36 +00:00
Douglas Gregor
19ead876d2
Disable this test until we figure out what madness it causes
...
llvm-svn: 117416
2010-10-26 23:34:31 +00:00
Dan Gohman
5faac39061
Enable clang autocompletion by default.
...
llvm-svn: 117415
2010-10-26 23:24:54 +00:00
Dan Gohman
2f76cd756a
Add support for code completion on stdin.
...
llvm-svn: 117414
2010-10-26 23:21:25 +00:00
Dale Johannesen
e660f4d072
Use a MemIntrinsicSDNode for ISD::PREFETCH, which touches
...
memory, so a MachineMemOperand is useful (not propagated
into the MachineInstr yet). No functional change except
for dump output.
llvm-svn: 117413
2010-10-26 23:11:10 +00:00
Andrew Trick
5f88cc34e1
Remove the vector of live vregs. I thought we would need to track
...
them, but hopefully we won't. And this is not the right data structure
to do it anyway.
llvm-svn: 117412
2010-10-26 22:58:24 +00:00
Owen Anderson
825b2d1946
Add correct NEON encodings for vqshl, vqshrn, vqshrun, vqrshl, vqshrn, and vqrshrun.
...
llvm-svn: 117411
2010-10-26 22:50:46 +00:00
Fariborz Jahanian
67ca8c4c7b
Patch to provide guard when initializing instances
...
of static data member of a class template.
Fixes //rdar :// 8562966 and pr8409.
llvm-svn: 117410
2010-10-26 22:47:47 +00:00
Jim Grosbach
1e4d9a17c2
First part of refactoring ARM addrmode2 (load/store) instructions to be more
...
explicit about the operands. Split out the different variants into separate
instructions. This gives us the ability to, among other things, assign
different scheduling itineraries to the variants. rdar://8477752.
llvm-svn: 117409
2010-10-26 22:37:02 +00:00
Jakob Stoklund Olesen
e4f3317cda
After splitting, compute connected components of all new registers, not just for
...
the remainder register.
Example:
bb0:
x = 1
bb1:
use(x)
...
x = 2
jump bb1
When x is isolated in bb1, the inner part breaks into two components, x1 and x2:
bb0:
x0 = 1
bb1:
x1 = x0
use(x1)
...
x2 = 2
x0 = x2
jump bb1
llvm-svn: 117408
2010-10-26 22:36:09 +00:00
Jakob Stoklund Olesen
260fa289df
Verify that live intervals are connected. If there are multiple connected
...
components, each should get its own virtual register.
llvm-svn: 117407
2010-10-26 22:36:07 +00:00
Jakob Stoklund Olesen
022e7795cf
Call RenumberValues for all new registers created during splitting. This is
...
necessary to get correct hasPHIKill flags.
llvm-svn: 117406
2010-10-26 22:36:05 +00:00
Jakob Stoklund Olesen
4453324e5b
Preserve PHIDef bits in cloned values during splitting.
...
llvm-svn: 117405
2010-10-26 22:36:02 +00:00
Devang Patel
05561e8b7b
Assign source ordering to nodes created for StoreInst.
...
llvm-svn: 117404
2010-10-26 22:14:52 +00:00
John McCall
6bde954f47
Extract procedures to do scalar-to-memory and memory-to-scalar conversions
...
in IR gen, and use those to fix a correctness issue with bool atomic
intrinsics. rdar://problem/8461234
llvm-svn: 117403
2010-10-26 22:09:15 +00:00
Owen Anderson
2888e2c7f9
Correct NEON encodings for vshrn, vrshl, vrshr, vrshrn.
...
llvm-svn: 117402
2010-10-26 21:58:41 +00:00
Jim Grosbach
3fe94f1e9f
FileCheck'ize
...
llvm-svn: 117401
2010-10-26 21:26:47 +00:00
Douglas Gregor
bb55f6bd23
Sign
...
llvm-svn: 117400
2010-10-26 21:25:18 +00:00
Owen Anderson
c4126a1a2c
Add tests for NEON encoding of vshll.
...
llvm-svn: 117399
2010-10-26 21:21:47 +00:00
Owen Anderson
e18579976f
Simplify classes for shift instructions, which are never commutable.
...
llvm-svn: 117398
2010-10-26 21:13:59 +00:00
Dan Gohman
52765215d0
Simplify this code: don't check for the same error two
...
different ways. Check once, and use an assert to handle
consistency checking.
llvm-svn: 117397
2010-10-26 21:13:51 +00:00
Owen Anderson
0fbb20769f
Tests for NEON encoding of vshr.
...
llvm-svn: 117396
2010-10-26 21:08:42 +00:00
Greg Clayton
ab7b6d6197
Fixed vAttachWait by fixing a missed "else if".
...
llvm-svn: 117395
2010-10-26 21:04:55 +00:00
Owen Anderson
3665fee8de
Provide correct NEON encodings for vshl, register and immediate forms.
...
llvm-svn: 117394
2010-10-26 20:56:57 +00:00
Dan Gohman
5d223dcb2f
getOrCreateContentCache never returns null, so overrideFileContents
...
doesn't need its return value.
llvm-svn: 117393
2010-10-26 20:47:28 +00:00
Jakob Stoklund Olesen
b7050233fb
Teach MachineBasicBlock::print() to annotate instructions and blocks with
...
SlotIndexes when available.
llvm-svn: 117392
2010-10-26 20:21:46 +00:00
Jakob Stoklund Olesen
db594373bd
Remmeber to print full live interval on verification error.
...
llvm-svn: 117391
2010-10-26 20:21:43 +00:00
Douglas Gregor
9c0672f40a
I hate this test
...
llvm-svn: 117390
2010-10-26 19:36:20 +00:00
Rafael Espindola
c9fb35e73b
Add support for .ident.
...
llvm-svn: 117389
2010-10-26 19:35:47 +00:00
Jim Grosbach
9302bfdd5a
Grammar.
...
llvm-svn: 117388
2010-10-26 19:34:41 +00:00
Jim Grosbach
79b3bf4d81
Nuke extraneous comment. It's applicable elsewhere, but not in this func.
...
llvm-svn: 117387
2010-10-26 19:22:23 +00:00
Dan Gohman
8fc50c296a
Factor out the code for emitting code to load vtable pointer members
...
so that it's done in one place.
llvm-svn: 117386
2010-10-26 18:44:08 +00:00
Owen Anderson
db192ba90f
Tests for NEON encoding of vrecpe, vrecps, vrsqrte, and vsqrts.
...
llvm-svn: 117385
2010-10-26 18:43:13 +00:00
Andrew Trick
84aef49e32
Jakob's review of the basic register allocator.
...
llvm-svn: 117384
2010-10-26 18:34:01 +00:00
Caroline Tice
6dfb484139
Remove inappropriate if-clause in regex name resolution that was
...
causing modules that haven't already been parsed from being searched.
llvm-svn: 117383
2010-10-26 18:33:57 +00:00
Owen Anderson
b3bcf529fc
Tests for NEON encodings of vpmin and vpmax.
...
llvm-svn: 117382
2010-10-26 18:31:47 +00:00
Douglas Gregor
fc0862da95
Something is seriously wonky with this test
...
llvm-svn: 117381
2010-10-26 18:25:19 +00:00
Owen Anderson
691ce68d3c
Add correct NEON encoding for vpadal.
...
llvm-svn: 117380
2010-10-26 18:18:03 +00:00
Rafael Espindola
d94f3b4ae9
handle X86::EH_RETURN64 and X86::EH_RETURN.
...
llvm-svn: 117378
2010-10-26 18:09:55 +00:00
Owen Anderson
035b3261ee
Tests for NEON encoding of vpadd and vpaddl.
...
llvm-svn: 117377
2010-10-26 18:04:51 +00:00
Devang Patel
b5694e702c
s/beginScope/beginInstruction/g
...
s/endScope/endInstruction/g
llvm-svn: 117376
2010-10-26 17:49:02 +00:00