Steve Naroff
05efa97d38
Rework Sema::CheckConditionalOperands(). No functionality change.
...
This was necessary to simplify some other changes I'm making (wrt ObjC type cleanups).
The idea is to separate the constraint checks for block pointers, ObjC pointers, and C pointers (the previous code combined them into one clause).
Note: This routine will be further simplified when I integrate the ObjC type cleanups (forthcoming).
llvm-svn: 74604
2009-07-01 14:36:47 +00:00
Misha Brukman
89141b5a79
Added step-by-step directions on how to use the script to build and install an
...
x86_64/Linux -> ARM/Linux crosstool.
llvm-svn: 74603
2009-07-01 13:51:59 +00:00
Evan Cheng
04f72fc955
CommuteChangesDestination() should check if to-be-commuted instruction defines any register. Also teaches the default commuteInstruction() to commute instruction without definitions (e.g. X86::test / ARM::tsp).
...
llvm-svn: 74602
2009-07-01 08:29:08 +00:00
Evan Cheng
2a5efe14a7
Remove special handling of implicit_def. Fix a couple more bugs in liveintervalanalysis and coalescer handling of implicit_def.
...
Note, isUndef marker must be placed even on implicit_def def operand or else the scavenger will not ignore it. This is necessary because -O0 path does not use liveintervalanalysis, it treats implicit_def just like any other def.
llvm-svn: 74601
2009-07-01 08:19:36 +00:00
Nate Begeman
ef1a7fa89d
Implement Eli's feedback for vecto constant expressions;
...
For ExtVectorType, initializer is splatted to all elements.
For VectorType, initializer is bitcast to vector type.
Verified that for VectorType, output is identical to gcc.
llvm-svn: 74600
2009-07-01 07:50:47 +00:00
Daniel Dunbar
1cc14c3f3d
Tweak MCSymbol doxyments.
...
llvm-svn: 74599
2009-07-01 07:03:41 +00:00
Daniel Dunbar
9c4809a887
llvm-mc: Fill in the rest of tokens for 'as-lex' mode.
...
llvm-svn: 74598
2009-07-01 06:56:54 +00:00
Owen Anderson
cb86e113a9
Fix the build on OpenBSD.
...
llvm-svn: 74597
2009-07-01 06:53:29 +00:00
Daniel Dunbar
0d5fc9a5b0
Rename MCValue::isConstant to isAbsolute.
...
llvm-svn: 74596
2009-07-01 06:48:00 +00:00
Chris Lattner
e4dfc89615
add some of the new tokens, others are still missing.
...
llvm-svn: 74595
2009-07-01 06:36:49 +00:00
Daniel Dunbar
fc35841077
llvm-mc: Emit parsed instructions to the MCStreamer.
...
llvm-svn: 74594
2009-07-01 06:35:48 +00:00
Daniel Dunbar
23a72aa476
Dump MCInsts in the MC .s printer, for now.
...
llvm-svn: 74593
2009-07-01 06:35:03 +00:00
Chris Lattner
c5327c81d8
add comments, privatize interface
...
llvm-svn: 74592
2009-07-01 06:31:49 +00:00
Chris Lattner
0420d7cb22
disable some ctors.
...
llvm-svn: 74591
2009-07-01 06:23:14 +00:00
Chris Lattner
1d70bbcf5c
add some comments to MCSymbol header, make the ctor private so that only MCContext can create these.
...
llvm-svn: 74590
2009-07-01 06:21:53 +00:00
Chris Lattner
fceae7d194
improve comments.
...
llvm-svn: 74589
2009-07-01 06:08:37 +00:00
Daniel Dunbar
c6cd62b351
Add missing include for getpagesize, and fix a typo.
...
llvm-svn: 74588
2009-07-01 06:06:42 +00:00
Daniel Dunbar
86bb32b138
Fix a Darwinism, .s files meant to be preprocessed should be named .S.
...
llvm-svn: 74587
2009-07-01 06:04:03 +00:00
Daniel Dunbar
f118402877
Use getpagesize() on non-Darwin platforms.
...
- Presumably we will eventually need configure magic for this stuff.
llvm-svn: 74586
2009-07-01 06:02:53 +00:00
Chris Lattner
3dd1b4b6f2
use new and simplified LLVM APIs. Patch by Jay Foad!
...
llvm-svn: 74585
2009-07-01 04:13:52 +00:00
Chris Lattner
96122debc1
improve the APIs for creating struct and function types with no arguments/elements
...
to not have to create a temporary vector (in the API at least). Patch by Jay Foad!
llvm-svn: 74584
2009-07-01 04:13:31 +00:00
Eli Friedman
2857ccbaa7
Fix for PR4192: fix the definition of int64_t on x86_64 Linux.
...
Note that I'm guessing that *BSD and Solaris do the same thing as Linux
here, but it's quite possible I'm wrong; if the following testcase
gives an error on x86-64 with gcc for any of those operating systems, please
tell me:
#include <stdint.h>
int64_t x; long x;
llvm-svn: 74583
2009-07-01 03:36:11 +00:00
Chris Lattner
f95fa1b721
Fix some fast-isel problems selecting global variable addressing in
...
pic mode.
llvm-svn: 74582
2009-07-01 03:27:19 +00:00
Zhongxing Xu
b4ce4fc4ee
add fixme.
...
llvm-svn: 74581
2009-07-01 02:12:57 +00:00
Evan Cheng
d379e896ff
Handle IMPLICIT_DEF with isUndef operand marker, part 2. This patch moves the code to annotate machineoperands to LiveIntervalAnalysis. It also add markers for implicit_def that define physical registers. The rest, is just a lot of details.
...
llvm-svn: 74580
2009-07-01 01:59:31 +00:00
Daniel Dunbar
75c12e1569
Remove unused AsmPrinter OptLevel argument, and propogate.
...
- This more or less amounts to a revert of r65379. I'm curious to know what
happened that caused this variable to become unused.
llvm-svn: 74579
2009-07-01 01:48:54 +00:00
Douglas Gregor
e3f1f350ff
Cope with explicitly-specified function template arguments when there
...
are fewer template arguments than there are template parameters for
that function.
llvm-svn: 74578
2009-07-01 00:28:38 +00:00
David Goodwin
86c7e20ca6
Add PIC load and store patterns for Thumb-2.
...
llvm-svn: 74577
2009-07-01 00:01:13 +00:00
Douglas Gregor
89026b5018
When explicit template arguments are provided for a function call,
...
substitute those template arguments into the function parameter types
prior to template argument deduction. There's still a bit of work to
do to make this work properly when only some of the template arguments
are specified.
llvm-svn: 74576
2009-06-30 23:57:56 +00:00
Owen Anderson
1938fb1954
Add a global context, for easing backwards compatibility.
...
llvm-svn: 74574
2009-06-30 23:39:59 +00:00
Daniel Dunbar
d0a08e0430
llvm-mc: Introduce method to match a parsed x86 instruction into an MCInst.
...
llvm-svn: 74573
2009-06-30 23:38:38 +00:00
Daniel Dunbar
d6ea0300e4
Fill in some methods for the MCValue field of an MCOperand.
...
llvm-svn: 74572
2009-06-30 23:37:44 +00:00
Fariborz Jahanian
302bb6661f
Patch to support optional nested-name-specifier in in ctor-initializer
...
list.
llvm-svn: 74571
2009-06-30 23:26:25 +00:00
Daniel Dunbar
cfcdf5c1ac
llvm-mc: Accept relocatable expressions when parsing displacements and
...
immediates.
llvm-svn: 74568
2009-06-30 23:02:44 +00:00
Chris Lattner
a1d7ab47fa
initial web page for compiler_rt
...
llvm-svn: 74567
2009-06-30 22:56:43 +00:00
David Goodwin
a83100f687
Thumb-2 load and store double description. But nothing yet creates them.
...
llvm-svn: 74566
2009-06-30 22:50:01 +00:00
Daniel Dunbar
8561b6aea0
llvm-mc: Symbols in a relocatable expression of the (a - b + cst) form are
...
allowed to be undefined when the expression is seen, we cannot enforce the
same-section requirement until the entire assembly file has been seen.
llvm-svn: 74565
2009-06-30 22:49:27 +00:00
Bill Wendling
31ceb1bcba
Add an "alignment" field to the MachineFunction object. It makes more sense to
...
have the alignment be calculated up front, and have the back-ends obey whatever
alignment is decided upon.
This allows for future work that would allow for precise no-op placement and the
like.
llvm-svn: 74564
2009-06-30 22:38:32 +00:00
Douglas Gregor
a727cb98a4
Preliminary parsing and ASTs for template-ids that refer to function
...
templates, such as make<int&>. These template-ids are only barely
functional for function calls; much more to come.
llvm-svn: 74563
2009-06-30 22:34:41 +00:00
Chris Lattner
0a25d6857a
add directory for web page.
...
llvm-svn: 74562
2009-06-30 22:33:54 +00:00
Ted Kremenek
aff66a8a19
Update old CastRegion logic to not assume that ElementRegion's super region is a
...
TypedRegion. While we plan on removing this code at some point, it serves as a
good reference implementation for use with BasicStore until we are sure the new
CastRegion logic (in RegionStore.cpp) is correct.
llvm-svn: 74559
2009-06-30 22:31:23 +00:00
Ted Kremenek
58d8190417
Fix: <rdar://problem/7021553> clang -fsyntax-only crashes (in ParseDeclarationSpecifiers ... from ParseObjCTypeName)
...
Another case where we should use SmallVector::data() instead of taking the
address of element 0 of a SmallVector when the SmallVector has no elements.
llvm-svn: 74556
2009-06-30 22:19:00 +00:00
David Goodwin
d0890a2bad
Add thumb-2 store word, halfword, and byte.
...
llvm-svn: 74555
2009-06-30 22:11:34 +00:00
Fariborz Jahanian
cae5482f6c
Diagnose multiple initialization of anonymous union
...
fields in the ctor-initializer list.
llvm-svn: 74554
2009-06-30 21:52:59 +00:00
Andreas Bolka
e415f52997
Drop redundant print impl.
...
llvm-svn: 74553
2009-06-30 21:33:56 +00:00
Ted Kremenek
8fd187986d
Combine two conditional branches into one. No functionality change.
...
llvm-svn: 74552
2009-06-30 20:24:11 +00:00
Dan Gohman
3423e72b55
Minor code cleanups.
...
llvm-svn: 74551
2009-06-30 20:13:32 +00:00
Dan Gohman
10f1733d9a
Reapply 74494, this time removing the conflicting definition of operator<<
...
in APIntTest.cpp.
llvm-svn: 74550
2009-06-30 20:10:56 +00:00
David Goodwin
28d6d87244
Improve Thumb-2 jump table support.
...
llvm-svn: 74549
2009-06-30 19:50:22 +00:00
David Greene
50475de6af
Add 256-bit memory operand support.
...
llvm-svn: 74548
2009-06-30 19:24:59 +00:00