Eli Friedman
164da6618e
A couple minor corrections to the "GCC extensions not implemented yet"
...
section of the users manual.
llvm-svn: 72725
2009-06-02 08:21:31 +00:00
Eli Friedman
fd80b2af16
PR4288: Make -dD (dump macros with preprocessed source) play nicely with
...
# line directives.
llvm-svn: 72724
2009-06-02 07:55:39 +00:00
Eli Friedman
5aa28de4fe
Fix a silly typo in my previous objc_gc merging patch.
...
llvm-svn: 72723
2009-06-02 07:45:37 +00:00
Eli Friedman
f6bd15038c
If we recognize alloca, treat it as a builtin. This fixes uses of
...
alloca without declaring it.
llvm-svn: 72719
2009-06-02 07:10:30 +00:00
Eli Friedman
cb8302ee3e
Add builtin declarations for the variants of sin and cos.
...
llvm-svn: 72718
2009-06-02 07:06:02 +00:00
Eli Friedman
f83c258eae
Add aliases for a couple of SSE intrinsics. Patch by Ed Schouten.
...
llvm-svn: 72717
2009-06-02 05:55:48 +00:00
Eli Friedman
28d85c0803
Add --shared option.
...
llvm-svn: 72716
2009-06-02 05:46:32 +00:00
Eli Friedman
091a9ac014
Cleaned-up version of gc attribute type merging. I still don't like it
...
very much, but I have a feeling we're never going to have an
implementation that makes sense because of compatibility issues.
llvm-svn: 72715
2009-06-02 05:28:56 +00:00
Eli Friedman
179f2b9ec7
Remove test which doesn't pass with gcc.
...
llvm-svn: 72714
2009-06-02 05:24:36 +00:00
Sanjiv Gupta
7c72007e2a
Add floating point details to PIC16 Target.
...
llvm-svn: 72713
2009-06-02 04:43:46 +00:00
Dale Johannesen
5234d3795f
Revert 72707 and 72709, for the moment.
...
llvm-svn: 72712
2009-06-02 03:12:52 +00:00
Fariborz Jahanian
2d725b19da
This patch attempts to fix the merging of __strong/__weak attributes
...
in merge_types. It is incomplete. We probably want to issue
a warning if user attempts to change the attribute from __weak to
__strong or vice-vera. It also assumes that a __weak/__strong
attribute can not be specified with other (currently one) type
attriute.
llvm-svn: 72711
2009-06-02 01:40:22 +00:00
Evan Cheng
836894405f
Avoid infinite looping in AllGlobalLoadUsesSimpleEnoughForHeapSRA(). This can happen when PHI uses are recursively dependent on each other.
...
llvm-svn: 72710
2009-06-02 00:56:07 +00:00
Dale Johannesen
7fde88cce8
Add missing file.
...
llvm-svn: 72709
2009-06-01 23:48:58 +00:00
Nick Kledzik
94e2d973c8
update comments about .objc_ symbols being generated
...
llvm-svn: 72708
2009-06-01 23:41:09 +00:00
Dale Johannesen
0b8ca79253
Make the implicit inputs and outputs of target-independent
...
ADDC/ADDE use MVT::i1 (later, whatever it gets legalized to)
instead of MVT::Flag. Remove CARRY_FALSE in favor of 0; adjust
all target-independent code to use this format.
Most targets will still produce a Flag-setting target-dependent
version when selection is done. X86 is converted to use i32
instead, which means TableGen needs to produce different code
in xxxGenDAGISel.inc. This keys off the new supportsHasI1 bit
in xxxInstrInfo, currently set only for X86; in principle this
is temporary and should go away when all other targets have
been converted. All relevant X86 instruction patterns are
modified to represent setting and using EFLAGS explicitly. The
same can be done on other targets.
The immediate behavior change is that an ADC/ADD pair are no
longer tightly coupled in the X86 scheduler; they can be
separated by instructions that don't clobber the flags (MOV).
I will soon add some peephole optimizations based on using
other instructions that set the flags to feed into ADC.
llvm-svn: 72707
2009-06-01 23:27:20 +00:00
Dale Johannesen
ff10450680
Comment grammaro/clarification.
...
llvm-svn: 72706
2009-06-01 23:13:42 +00:00
Dale Johannesen
67f472feed
Trailing whitespace.
...
llvm-svn: 72705
2009-06-01 23:12:52 +00:00
Daniel Dunbar
3acbe4ab58
Fix rare failure of .ver-svn creation, it has a dependency that the output
...
directory exist.
llvm-svn: 72704
2009-06-01 22:15:35 +00:00
Fariborz Jahanian
c6d9800564
A corner case of objc2 gc's write-barrier generation
...
for the Next runtime.
llvm-svn: 72703
2009-06-01 21:29:32 +00:00
Mike Stump
245fa0744f
Dcoument that the opauque value used to construct QNaNs is truncated
...
as necessary.
llvm-svn: 72702
2009-06-01 21:02:35 +00:00
Nick Kledzik
b481c2015a
<rdar://problem/6927148> libLTO needs to handle i386 magic objc class symbols
...
Parse __OBJC data structures and synthesize magic .objc_ symbols.
Also, alter mangler so that objc method names are readable.
llvm-svn: 72700
2009-06-01 20:33:09 +00:00
Bill Wendling
5ea3e9db43
Accidental commit. This isn't ready for prime time just yet.
...
llvm-svn: 72699
2009-06-01 20:18:46 +00:00
Anton Korobeynikov
12694bd8ac
Implement review feedback. Make thumb2 'normal' subtarget feature
...
llvm-svn: 72698
2009-06-01 20:00:48 +00:00
Bruno Cardoso Lopes
9fd794bebf
Fix new CodeEmitter stuff to follow LLVM codying style. Patch by Aaron Gray
...
llvm-svn: 72697
2009-06-01 19:57:37 +00:00
Anton Korobeynikov
2afc641e04
Do not emit "generic" CPU string. This fixes PR4291.
...
llvm-svn: 72696
2009-06-01 19:03:17 +00:00
Fariborz Jahanian
bc60ee2215
Fixed a test case which I am to blame for making it
...
not runaable.
llvm-svn: 72695
2009-06-01 17:40:54 +00:00
Daniel Dunbar
7614192d03
Update test case.
...
llvm-svn: 72694
2009-06-01 17:27:37 +00:00
Anders Carlsson
a8decaa7c2
Fix a bug in hasEmptyExceptionSpec. (Thanks Sebastian for noticing).
...
llvm-svn: 72691
2009-06-01 15:02:12 +00:00
Eli Friedman
e32c02114f
PR4289: Make sure "&func" has the right LLVM type when "func" is a
...
K&R-style definition.
llvm-svn: 72690
2009-06-01 10:04:20 +00:00
Eli Friedman
fcbf7d2baf
PR4287: allow a variadic prototype to make a subsequent K&R style
...
definition variadic. I'm not completely sure it's legal, but the
standard can be interpreted as making it legal, and gcc seems to think
it's legal, so I didn't add an extension warning.
llvm-svn: 72689
2009-06-01 09:24:59 +00:00
Eli Friedman
ee94e3cc9e
PR4286: Make RewriteLoadUserOfWholeAlloca and
...
RewriteStoreUserOfWholeAlloca deal with tail padding because
isSafeUseOfBitCastedAllocation expects them to. Otherwise, we crash
trying to erase the bitcast.
llvm-svn: 72688
2009-06-01 09:14:32 +00:00
Eli Friedman
202a68a917
Simplify run line.
...
llvm-svn: 72687
2009-06-01 08:55:08 +00:00
Eli Friedman
d8cec57b9d
PR4283: Don't truncate multibyte character constants in the
...
preprocessor.
llvm-svn: 72686
2009-06-01 05:25:02 +00:00
Nick Lewycky
cb8317dac9
Update the bitcode reader to support reading .bc files where the embedded
...
metadata references non-Constant values such as instructions.
llvm-svn: 72685
2009-06-01 04:42:10 +00:00
Nick Lewycky
aed2a66189
Add missing codenames to the .bc analyzer.
...
llvm-svn: 72684
2009-06-01 04:41:03 +00:00
Eli Friedman
dcca6333c6
Disable type merging with gc attributes. This has a number of nasty
...
properties at the moment:
1. It allows stuff like "__strong id x; __weak id x;".
2. For constructs like "__strong id x; id x;", subsequent references to
x lose the objc_gc attribute.
3. This incorrectly allows merges involving the address_space attribute.
4. Constructs like "id x; /* some code using x */ __weak id x;" don't
apply the objc_gc attribute consistently to all uses of x.
The first three can probably be fixed relatively easily; the fourth
would be extremely difficult to fix.
llvm-svn: 72683
2009-06-01 01:22:52 +00:00
Zhongxing Xu
84a1af5206
Unify coding style.
...
llvm-svn: 72682
2009-06-01 00:50:23 +00:00
Zhongxing Xu
dccbf28dda
Use a reference to modify the DeclIDs map.
...
llvm-svn: 72681
2009-06-01 00:49:11 +00:00
Anders Carlsson
6f6f6005ab
After spending 15 minutes trying to figure out why this was crashing, I realized it was a bug in the test case :)
...
llvm-svn: 72680
2009-06-01 00:40:08 +00:00
Anders Carlsson
fa7c608ecc
Fix a thinko.
...
llvm-svn: 72679
2009-06-01 00:26:14 +00:00
Anders Carlsson
ca50119a31
Check for null correctly for new expressions.
...
llvm-svn: 72678
2009-06-01 00:05:16 +00:00
Anders Carlsson
cba81fc4de
Improve irgen of 'new' further.
...
llvm-svn: 72677
2009-05-31 21:53:59 +00:00
Anders Carlsson
96c012ff8b
...and aggregate POD types.
...
llvm-svn: 72676
2009-05-31 21:12:26 +00:00
Anders Carlsson
60d0c2c1c2
Support for complex types.
...
llvm-svn: 72675
2009-05-31 21:07:58 +00:00
Anders Carlsson
ec71f61608
Better support for scalar POD types in 'new' expressions.
...
llvm-svn: 72674
2009-05-31 20:56:36 +00:00
Anders Carlsson
6f9dabff6d
Make sure to copy back arguments that can be changed by FindAllocationOverload. This fixes placement new. (Sebastian, please review).
...
llvm-svn: 72673
2009-05-31 20:26:12 +00:00
Anders Carlsson
1832f52b10
Very basic irgen support for new expressions.
...
llvm-svn: 72672
2009-05-31 20:21:44 +00:00
Anders Carlsson
0955f20473
Don't try to call getFileCharacteristic if the function declaration has an invalid source location (as is the case for the global allocation functions.
...
llvm-svn: 72671
2009-05-31 20:19:23 +00:00
Anders Carlsson
2418712039
Fix an off by one error when trying to perform copy initialization of operator new and operator delete arguments. Sebastian, please review.
...
llvm-svn: 72670
2009-05-31 19:49:47 +00:00