Richard Smith
9647d3ca02
Fix PR9488: 'auto' type substitution can fail (for instance, if it creates a reference-to-void type). Don't crash if it does.
...
Also fix an issue where type source information for the resulting type was being lost.
llvm-svn: 127811
2011-03-17 16:11:59 +00:00
Cameron Zwarich
2ef0c69df1
Move more logic into getTypeForExtArgOrReturn.
...
llvm-svn: 127809
2011-03-17 14:53:37 +00:00
Cameron Zwarich
341c36dc8b
Change the signext language in LangRef to closer match zeroext.
...
llvm-svn: 127808
2011-03-17 14:21:58 +00:00
Cameron Zwarich
34e7b3f77e
Rename getTypeForExtendedInteger() to getTypeForExtArgOrReturn().
...
llvm-svn: 127807
2011-03-17 14:21:56 +00:00
David Chisnall
a9e5460f03
Remove code that was intentionally generating bad code on the GNU runtime for no reason (failing to emit .cxx_constructor / .cxx_destructor methods).
...
llvm-svn: 127806
2011-03-17 14:19:08 +00:00
Ted Kremenek
65ccd1d9b0
Fix test to test the right thing.
...
llvm-svn: 127803
2011-03-17 05:34:58 +00:00
Ted Kremenek
2551fbe928
Don't construct two CFGs just to run -Wuninitialized. While this causes new warnings to be flagged under -Wconditional-uninitialized, this is something we
...
can improve over time.
llvm-svn: 127802
2011-03-17 05:29:57 +00:00
Nick Lewycky
b4d763b37d
Add comments for the demanglings. Correct mangled form of operator delete!
...
llvm-svn: 127801
2011-03-17 05:20:12 +00:00
NAKAMURA Takumi
bf9ff6f63b
test/CodeGen/X86/h-registers-1.ll: Add explicit -mtriple=x86_64-linux. It does not need to be checked on x86_64-win32 (aka Win64).
...
llvm-svn: 127800
2011-03-17 04:24:40 +00:00
Ted Kremenek
97d8d03855
Make test more portable.
...
llvm-svn: 127799
2011-03-17 04:16:45 +00:00
Ted Kremenek
70727343cf
Teach VariadicMethodTypeChecker about pointers attributed as 'NSObject'.
...
llvm-svn: 127798
2011-03-17 04:10:25 +00:00
Ted Kremenek
6fa1daede5
Teach VariadicMethodTypeChecker that CF references are valid arguments to variadic Objective-C methods.
...
llvm-svn: 127797
2011-03-17 04:01:35 +00:00
Ted Kremenek
3e5ad5932e
Tweak RegionStore's handling of lazy compound values to use the 'Default' versus 'Direct' binding key, thus allowing specific elements of an array/struct to be overwritten without
...
invalidating the entire binding. Fixes PR 9455.
llvm-svn: 127796
2011-03-17 03:51:51 +00:00
Ted Kremenek
c15a4e4b37
Extend -Wuninitialized to support vector types.
...
llvm-svn: 127794
2011-03-17 03:06:11 +00:00
Ted Kremenek
61c74a1423
Rename -Wuninitialized-maybe to -Wconditional-uninitialized.
...
llvm-svn: 127793
2011-03-17 03:06:07 +00:00
Nick Lewycky
881e1871dd
Add "swi" which is an obsolete mnemonic for "svc".
...
llvm-svn: 127788
2011-03-17 01:46:14 +00:00
Ken Dyck
db205d1828
Convert NextOffsetInBytes to CharUnits and rename to NextOffsetInChars. No
...
change in functionality intended.
llvm-svn: 127787
2011-03-17 01:33:18 +00:00
Eli Friedman
e8f2be0c10
A couple new README entries.
...
llvm-svn: 127786
2011-03-17 01:22:09 +00:00
Johnny Chen
6f6fb3e515
Add a Python script to take an executable, run gdb to disassemble a function,
...
read the memory contents of the function, and then feed the bytes to the
'llvm-mc -disassemble' command.
It uses the pexpect module located under ToT/test/pexpect-2.4 directory to
automate the interaction with gdb. This is used initially to test the low
level ARM disassembler of llvm.
llvm-svn: 127785
2011-03-17 00:59:57 +00:00
Matt Beaumont-Gay
145e2eb0e3
Politely inform GCC that we will never fall off the end of that switch.
...
llvm-svn: 127783
2011-03-17 00:46:34 +00:00
Johnny Chen
dbfc256eec
As a simple measure, output the lldb version and the svn info for
...
which the testsuite is run against.
llvm-svn: 127782
2011-03-17 00:38:22 +00:00
Rafael Espindola
b39c7c7b17
Add support in the LTO library for loading an object from the middle
...
of an file.
llvm-svn: 127781
2011-03-17 00:36:11 +00:00
Joerg Sonnenberger
07de07eeea
Fix handling of @IDNTPOFF relocations, they need to get STT_TLS.
...
While here, add VK_ARM_TPOFF and VK_ARM_GOTTPOFF, too.
llvm-svn: 127780
2011-03-17 00:35:10 +00:00
Jakob Stoklund Olesen
315b42c354
Rewrite instructions as part of ConnectedVNInfoEqClasses::Distribute.
...
llvm-svn: 127779
2011-03-17 00:23:45 +00:00
Nick Kledzik
47a823b281
<rdar://problem/8914924> implement udivmodsi4 and divmodsi4 for ARM
...
llvm-svn: 127778
2011-03-17 00:09:13 +00:00
Daniel Dunbar
b1db4b69cc
Driver/ARM: Match GCC behavior in that -msoft-float disables NEON, despite this
...
not being consistent at all with other parts of the GCC implementation.
llvm-svn: 127777
2011-03-17 00:07:34 +00:00
Douglas Gregor
c2b97994ea
When libclang visits a translation unit via clang_visitChildren(),
...
walk the preprocessing record *before* walking the declarations, so
they we pretend that we actually respect the phases of translation.
We still walk the preprocessing record after the declarations when
performing token annotation or finding the cursor at a location, since
those routines depend on those semantics.
Fixes <rdar://problem/9137195>.
llvm-svn: 127776
2011-03-16 23:23:30 +00:00
NAKAMURA Takumi
5b6198dfb9
test/CodeGen/X86/constant-pool-remat-0.ll: FileCheck-ize and add explicit -mtriple=x86_64-linux.
...
llvm-svn: 127775
2011-03-16 23:01:31 +00:00
Jakob Stoklund Olesen
e14b2b226f
Add a LiveRangeEdit delegate callback before shrinking a live range.
...
The register allocator needs to adjust its live interval unions when that happens.
llvm-svn: 127774
2011-03-16 22:56:16 +00:00
Jakob Stoklund Olesen
c738c96519
Erase virtual registers that are unused after DCE.
...
llvm-svn: 127773
2011-03-16 22:56:13 +00:00
Jakob Stoklund Olesen
e29d63e98a
Tag cached interference with a user-provided tag instead of the virtual register number.
...
The live range of a virtual register may change which invalidates the cached
interference information.
llvm-svn: 127772
2011-03-16 22:56:11 +00:00
Jakob Stoklund Olesen
557a82c099
Clarify debugging output.
...
llvm-svn: 127771
2011-03-16 22:56:08 +00:00
Caroline Tice
aaf5ddcf82
Add code to emulate STRH (Register) Arm instruction.
...
Remove inaccurate comments from EmulateInstruction::Context definition.
Fix contexts in a few arm instruction emulation routines.
llvm-svn: 127770
2011-03-16 22:46:55 +00:00
Joerg Sonnenberger
bdbdf70334
Use C as fallback type if in C preprocessor mode.
...
llvm-svn: 127769
2011-03-16 22:45:02 +00:00
Eli Friedman
b6069255da
PR9494: Get rid of bitcast which was both unnecessary and written incorrectly.
...
llvm-svn: 127768
2011-03-16 22:34:09 +00:00
Nick Kledzik
371d881758
<rdar://problem/9145073> use -Os for release builds
...
llvm-svn: 127767
2011-03-16 22:23:24 +00:00
Cameron Zwarich
ac106273d4
The x86-64 ABI says that a bool is only guaranteed to be sign-extended to a byte
...
rather than an int. Thankfully, this only causes LLVM to miss optimizations, not
generate incorrect code.
This just fixes the zext at the return. We still insert an i32 ZextAssert when
reading a function's arguments, but it is followed by a truncate and another i8
ZextAssert so it is not optimized.
llvm-svn: 127766
2011-03-16 22:20:18 +00:00
Cameron Zwarich
40a9200357
Rename a test to be more inclusive.
...
llvm-svn: 127765
2011-03-16 22:20:12 +00:00
Cameron Zwarich
d1ad9bc277
Don't recompute something that we already have in a local variable.
...
llvm-svn: 127764
2011-03-16 22:20:07 +00:00
Daniel Dunbar
fd95b016fb
Revert r127757, "Patch to a fix dwarf relocation problem on ARM. One-line fix
...
plus the test where it used to break.", which broke Clang self-host of a
Debug+Asserts compiler, on OS X.
llvm-svn: 127763
2011-03-16 22:16:39 +00:00
Richard Osborne
c871eff3f5
Add XCore intrinsics for setclk, setrdy.
...
llvm-svn: 127761
2011-03-16 21:56:00 +00:00
Ted Kremenek
d4bcb4ffc1
Compress argument processing in ccc-analyzer. No functionality change.
...
llvm-svn: 127758
2011-03-16 21:10:42 +00:00
Renato Golin
a3aeafeb35
Patch to a fix dwarf relocation problem on ARM. One-line fix plus the test where it used to break.
...
llvm-svn: 127757
2011-03-16 21:05:52 +00:00
Abramo Bagnara
9875a3ce70
Use ElaboratedType also for C.
...
llvm-svn: 127755
2011-03-16 20:16:18 +00:00
Cameron Zwarich
49e354bcb6
Add a test for i1 zeroext arguments on x86-64. We currently generate code that
...
conforms to the ABI, but DAGCombine could in theory recognize the sequence of
zext asserts and truncates and generate incorrect code.
llvm-svn: 127754
2011-03-16 20:15:44 +00:00
Joerg Sonnenberger
f6ce2fb1b3
Refactor program name logic. Extend it to infer the target triple from
...
the program name, if it includes it as proper prefix. This makes calling
clang with -ccc-host-triple x86_64-linux the same as calling it with the
name x86_64-linux-clang.
llvm-svn: 127753
2011-03-16 20:15:43 +00:00
Douglas Gregor
63fab34469
Detect attempts to provide a specialization of a function within a
...
dependent scope and produce an error (rather than crashing). Fixes PR8979.
llvm-svn: 127749
2011-03-16 19:27:09 +00:00
Argyrios Kyrtzidis
d6278e3252
Having FileManager::getFile always open the file, brought much consternation and leaking of file descriptors.
...
Add 'openFile' bool to FileManager::getFile to specify whether we want to have the file opened or not, have it
false by default, and enable it only in HeaderSearch.cpp where the open+fstat optimization matters.
Fixes rdar://9139899.
llvm-svn: 127748
2011-03-16 19:17:25 +00:00
Douglas Gregor
89f3cd5c15
Clean up our handling of template-ids that resolve down to a single
...
overload, so that we actually do the resolution for full expressions
and emit more consistent, useful diagnostics. Also fixes an IRGen
crasher, where Sema wouldn't diagnose a resolvable bound member
function template-id used in a full-expression (<rdar://problem/9108698>).
llvm-svn: 127747
2011-03-16 19:16:25 +00:00
Sandeep Patel
5a4a0f75d4
Fix duplicate argument processing
...
llvm-svn: 127746
2011-03-16 19:14:34 +00:00