Eric Christopher
3fe6967b5d
Separate out Makefile defines so that we can keep the llvm
...
defined ones from the user defined ones. Propagate accordingly.
llvm-svn: 79308
2009-08-18 03:23:40 +00:00
Daniel Dunbar
f4e7b6cca4
Add LLVMInitializeAllTargetInfos for C api, and update
...
LLVMInitializeNativeTarget to initialize target info.
- Patch by Jose Fonseca.
llvm-svn: 79307
2009-08-18 03:03:27 +00:00
Dan Gohman
10f1471e2f
Make TargetData optional in MemCpyOptimizer.
...
llvm-svn: 79306
2009-08-18 01:17:52 +00:00
Ted Kremenek
9b2c79de59
Enhance static analyzer diagnostics by introducing a new 'EnhancedBugReporter'
...
which allows custom checks to register callback creator functions for creating
BugReporterVisitor objects. This allows various checks to include diagnostics
such as 'assuming value is null' with little extra work. Eventually this API
should be refactored to be cleaner and more simple.
llvm-svn: 79302
2009-08-18 01:05:30 +00:00
Evan Cheng
1105cbc270
Even more Apple style build horribleness.
...
llvm-svn: 79299
2009-08-18 00:56:17 +00:00
Dan Gohman
9f2b3db428
Make TargetData optional in SimplifyLibCalls.
...
llvm-svn: 79298
2009-08-18 00:48:13 +00:00
Anton Korobeynikov
284c9ae1b8
Regenerate
...
llvm-svn: 79297
2009-08-18 00:40:51 +00:00
Anton Korobeynikov
90e17e787f
The attached patches attempt to fix cross builds. For example, if you
...
try to use i686-darwin to build for arm-eabi, you'll quickly run into
several false assumptions that the target OS must be the same as the
host OS. These patches split $(OS) into $(HOST_OS) and $(TARGET_OS) to
help builds like "make check" and the test-suite able to cross
compile. Along the way a target of *-unknown-eabi is defined as
"Freestanding" so that TARGET_OS checks have something to work with.
Patch by Sandeep Patel!
llvm-svn: 79296
2009-08-18 00:40:33 +00:00
Edward O'Callaghan
2e9e3c3316
LLVM Ada language bindings. Credit to Rod Kay and the AuroraUX team.
...
llvm-svn: 79295
2009-08-18 00:24:36 +00:00
Dan Gohman
47a31a29c5
Fix function alignment at -Os on x86 to be 1, not 2. getFunctionAlignment
...
returns a log2 value.
llvm-svn: 79293
2009-08-18 00:20:06 +00:00
Dale Johannesen
4a50e68b65
PowerPC inline asm was emitting two output operands
...
for a single "m" constraint; this is wrong because the
opcode of a load or store would have to change in parallel.
This patch makes it always compute addresses into a register,
which is correct but not as efficient as possible. 7144566.
llvm-svn: 79292
2009-08-18 00:18:39 +00:00
John McCall
5ed6e8f54c
Teach Sema how to pop out of friend function definitions in nested classes.
...
llvm-svn: 79291
2009-08-18 00:00:49 +00:00
David Chisnall
26657ea8bc
Fixed typo in last commit pointed out by Anton.
...
llvm-svn: 79290
2009-08-17 23:18:30 +00:00
Devang Patel
c6faffde6c
Add prefix only if it is needed.
...
llvm-svn: 79289
2009-08-17 23:17:17 +00:00
David Chisnall
de3a06933d
Changes to TargetABIInfo to (hopefully) select the correct calling convention. This has been tested on FreeBSD, and now correctly generates GCC-compatible code for functions returning small structures. Please test it on other platforms!
...
llvm-svn: 79288
2009-08-17 23:08:21 +00:00
Jim Grosbach
f933c409e2
cleanups per review. Mostly cosmetic, plus use SmallVector in place of std::vector.
...
llvm-svn: 79287
2009-08-17 21:40:03 +00:00
John McCall
c5680625c8
#include <cstdlib> in the code listing for strtod.
...
llvm-svn: 79285
2009-08-17 21:07:37 +00:00
Devang Patel
993e527b30
Oops. find all llvm.dbg.global_variables.
...
llvm-svn: 79274
2009-08-17 20:36:20 +00:00
Jim Grosbach
43bbb9de66
Remove a bit more cruft from the sjlj moving to a backend pass.
...
llvm-svn: 79272
2009-08-17 20:25:04 +00:00
Jakob Stoklund Olesen
0de52f906d
Support compilation for the blackfin back-end
...
llvm-svn: 79271
2009-08-17 20:08:44 +00:00
Fariborz Jahanian
d172e91f2a
Patch to 1) synthesizing non-trivial default destructor when
...
one is not provided by user. 2) More complete
emission of ctor prologue when it has no initializer
list or when it is synthesized.
llvm-svn: 79269
2009-08-17 19:04:50 +00:00
Benjamin Kramer
436bd9f770
Update CMakeLists.
...
llvm-svn: 79264
2009-08-17 18:47:11 +00:00
Dan Gohman
7cb92a1e3d
Update comments to new-style syntax.
...
llvm-svn: 79263
2009-08-17 18:45:31 +00:00
Daniel Dunbar
f9bdf988a2
Fix build warning.
...
llvm-svn: 79262
2009-08-17 18:41:42 +00:00
Anders Carlsson
49033712e4
Remove an ErrorUnsupported call.
...
llvm-svn: 79261
2009-08-17 18:24:57 +00:00
Daniel Dunbar
3a4fc4b2ec
XFAIL this test for now. David/Steve, please sort out the correct fix.
...
llvm-svn: 79259
2009-08-17 18:01:54 +00:00
Owen Anderson
9801560ace
Privatize the last bits of static type state.
...
llvm-svn: 79258
2009-08-17 17:59:35 +00:00
Nick Lewycky
3a6fbfa6a4
Test the pass the test is actually for, instead of one that doesn't exist.
...
llvm-svn: 79257
2009-08-17 17:41:29 +00:00
Owen Anderson
286b3af6ae
Move the TypeMap lock to a member on LLVMContextImpl.
...
llvm-svn: 79256
2009-08-17 17:34:27 +00:00
Owen Anderson
d91e6b097d
Add locking around the attributes list.
...
llvm-svn: 79255
2009-08-17 17:10:58 +00:00
Owen Anderson
820739dccc
Add locking around signal handler registration.
...
llvm-svn: 79254
2009-08-17 17:07:22 +00:00
Benjamin Kramer
bd3c033713
Clear the uniquing table when initializing TLOF to avoid a crash when the TLOF is reinitialized with a different MCContext.
...
llvm-svn: 79253
2009-08-17 17:05:44 +00:00
Nick Lewycky
4c737147e1
Don't crash on critical edge. Patch by Andre Tavares.
...
llvm-svn: 79252
2009-08-17 17:00:57 +00:00
Jim Grosbach
486be66dbd
Move the sjlj exception handling conversions to a back-end pass where they
...
more properly belong. This allows removing the front-end conditionalized
SJLJ code, and cleans up the generated IR considerably. All of the
infrastructure code (calling _Unwind_SjLj_Register/Unregister, etc) is
added by the SjLjEHPrepare pass.
llvm-svn: 79250
2009-08-17 16:41:22 +00:00
Richard Osborne
94a2c1acae
Update getSectionForConstant() to to allow mergable sections to be nulled out
...
if not supported by the ELF subtarget.
llvm-svn: 79249
2009-08-17 16:37:11 +00:00
David Chisnall
9f57c29053
Initial patch to support definitions of id and Class from headers in Objective-C code.
...
This currently breaks test/SemaObjC/id-isa-ref.m and issues some spurious warnings when you attempt to assign a struct objc_class* value to a Class variable. The test case probably should fail as it's written, because without the definition of Class the compiler should not assume struct objc_class* is a valid receiver type, but it's left broken because it would be nice if we could get that passing too for the special case of isa.
Approved by snaroff.
llvm-svn: 79248
2009-08-17 16:35:33 +00:00
David Goodwin
d813cbfe72
Extend the instruction itinerary model to include the ability to indicate the def and use cycle for each operand. This additional information is optional, so existing itineraries do not need to be changed.
...
llvm-svn: 79247
2009-08-17 16:02:57 +00:00
Chris Lattner
ee97b8b11c
the MinPad argument to PadToColumn only really makes sense to be 1,
...
just remove the argument and replace it with 1.
llvm-svn: 79246
2009-08-17 15:48:08 +00:00
Misha Brukman
5906bc1059
Fixed indentation and spelling.
...
llvm-svn: 79245
2009-08-17 15:31:24 +00:00
Dan Gohman
74cb168a9e
Fix more missing newlines.
...
llvm-svn: 79244
2009-08-17 15:29:31 +00:00
Dan Gohman
d04f9bf01a
Fix printing of instructions with null operands.
...
llvm-svn: 79243
2009-08-17 15:28:08 +00:00
Dan Gohman
d0cc3f31c0
Always print at least one space before adding a comment.
...
llvm-svn: 79242
2009-08-17 15:27:30 +00:00
Dan Gohman
8dd69f88ea
Fix debug output to include a newline after printing a Value, now
...
that Value's operator<< doesn't include one.
llvm-svn: 79240
2009-08-17 15:25:05 +00:00
Duncan Sands
c4ce58d8fe
Don't access the first element of a potentially empty
...
vector (&Formals[0]). With this change llvm-gcc builds
with expensive checking enabled for C, C++ and Fortran.
While there, change a std::vector into a SmallVector.
This is partly gratuitous, but mostly because not all
STL vector implementations define the data method (and
it should be faster).
llvm-svn: 79237
2009-08-17 14:33:27 +00:00
Zhongxing Xu
b562444cf8
adjust indentation.
...
llvm-svn: 79236
2009-08-17 14:13:14 +00:00
Duncan Sands
5a70e1e37e
XFAIL this test since the fix was reverted.
...
llvm-svn: 79235
2009-08-17 12:20:45 +00:00
Nick Lewycky
d87648a850
Add a test that shows that SSI is working correctly.
...
llvm-svn: 79230
2009-08-17 07:32:08 +00:00
Zhongxing Xu
a7a35bc2a6
Remove unused variable.
...
llvm-svn: 79229
2009-08-17 06:30:30 +00:00
Zhongxing Xu
5f078cb844
To make the analysis independent on the locally stored liveness and cfg
...
of GRStateManager and GRExprEngine, pass the initial location context
to the getInitialState() method.
llvm-svn: 79228
2009-08-17 06:19:58 +00:00
Chris Lattner
aa1526419c
change AsmPrinter to switch sections using AsmStreamer instead of
...
doing it directly. This requires const'izing a bunch of stuff that
took sections, but this seems like the right semantic thing to do:
emitting a label to a section shouldn't mutate the MCSection object
itself, for example.
llvm-svn: 79227
2009-08-17 05:49:08 +00:00