- Jan 20, 2012
-
-
Ted Kremenek authored
Add ability to specifiy 'restrict' on parameters of builtins, and correct this oversight for scanf functions. llvm-svn: 148573
-
Andrew Trick authored
Fixes PR11783: bad cast to AddRecExpr. llvm-svn: 148572
-
Andrew Trick authored
llvm-svn: 148571
-
Devang Patel authored
llvm-svn: 148570
-
Devang Patel authored
llvm-svn: 148569
-
rdar://problem/10723651Bob Wilson authored
We have patterns for vector sext and zext operations but were missing anyext. Without those patterns, codegen will fail when the selection DAG has any_extend nodes. llvm-svn: 148568
-
Ted Kremenek authored
llvm-svn: 148567
-
Anna Zaks authored
llvm-svn: 148566
-
Jim Grosbach authored
Providing a template argment to a non-templatized class was crashing tblgen. Add a diagnostic. For example, $ cat bug.td class A; def B : A<0> { } $ llvm-tblgen bug.td bug.td:3:11: error: template argument provided to non-template class def B : A<0> { ^ llvm-svn: 148565
-
Sean Callanan authored
a reference to a class variable. llvm-svn: 148562
-
Greg Clayton authored
environment variable it set to include a path to lldb.py. Also fixed the case where the executable can't be located and doesn't match what is installed on the current system. It will still symbolicate the other frames, and will just show what was originally in the crash log file. Also removed the --crash-log option so the arguments to the "crashlog" command are one or more paths to crash logs. Fixed the script to "auto-install" itself when loaded from the embedded script interpreter. Now you only need to import the module and the command is ready for use. llvm-svn: 148561
-
Jim Grosbach authored
rdar://10724489 llvm-svn: 148560
-
Fariborz Jahanian authored
which have same semantics in mrr as well as arr. // rdar://10688312 llvm-svn: 148559
-
Anna Zaks authored
[analyzer] Tweak the buildbot script to include the experimental taint checker and correct the checker enabling setting. llvm-svn: 148558
-
Jim Grosbach authored
For bit patterns that aren't representable using the 8-bit floating point representation for vmov.f32, but are representable via vmov.i32, treat the .f32 syntax as an alias. Most importantly, this covers the case 'vmov.f32 Vd, #0.0'. rdar://10616677 llvm-svn: 148556
-
Benjamin Kramer authored
llvm-svn: 148555
-
Kostya Serebryany authored
llvm-svn: 148554
-
Kostya Serebryany authored
Problem: LLVM needs more function attributes than currently available (32 bits). One such proposed attribute is "address_safety", which shows that a function is being checked for address safety (by AddressSanitizer, SAFECode, etc). Solution: - extend the Attributes from 32 bits to 64-bits - wrap the object into a class so that unsigned is never erroneously used instead - change "unsigned" to "Attributes" throughout the code, including one place in clang. - the class has no "operator uint64 ()", but it has "uint64_t Raw() " to support packing/unpacking. - the class has "safe operator bool()" to support the common idiom: if (Attributes attr = getAttrs()) useAttrs(attr); - The CTOR from uint64_t is marked explicit, so I had to add a few explicit CTOR calls - Add the new attribute "address_safety". Doing it in the same commit to check that attributes beyond first 32 bits actually work. - Some of the functions from the Attribute namespace are worth moving inside the class, but I'd prefer to have it as a separate commit. Tested: "make check" on Linux (32-bit and 64-bit) and Mac (10.6) built/run spec CPU 2006 on Linux with clang -O2. This change will break clang build in lib/CodeGen/CGCall.cpp. The following patch will fix it. llvm-svn: 148553
-
Argyrios Kyrtzidis authored
expansion, in which case it returns a file range in the location where the argument was spelled. llvm-svn: 148551
-
Benjamin Kramer authored
llvm-svn: 148550
-
Benjamin Kramer authored
llvm-svn: 148549
-
Douglas Gregor authored
llvm-svn: 148547
-
Douglas Gregor authored
the front end into its own class, FrontendInputFile, to make it easier to introduce new per-input data. No functionality change. llvm-svn: 148546
-
Benjamin Kramer authored
Found by the clang static analyzer. llvm-svn: 148544
-
Benjamin Kramer authored
Found by the clang static analyzer. llvm-svn: 148543
-
Benjamin Kramer authored
Found by clang's own static analyzer. llvm-svn: 148542
-
Benjamin Kramer authored
Found by the clang static analyzer. llvm-svn: 148541
-
Benjamin Kramer authored
Found by the clang static analyzer. llvm-svn: 148540
-
Rafael Espindola authored
warnings from gcc. llvm-svn: 148539
-
Craig Topper authored
Improve 256-bit shuffle splitting to allow 2 sources in each 128-bit lane. As long as only a single lane of the source is used in the lane in the destination. This makes the splitting match much closer to what happens with 256-bit shuffles when AVX is disabled and only 128-bit XMM is allowed. llvm-svn: 148537
-
Nick Lewycky authored
can't handle. Also don't produce non-zero results for things which won't be transformed by SROA at all just because we saw the loads/stores before we saw the use of the address. llvm-svn: 148536
-
Andrew Trick authored
LSR has gradually been improved to more aggressively reuse existing code, particularly existing phi cycles. This exposed problems with the SCEVExpander's sloppy treatment of its insertion point. I applied some rigor to the insertion point problem that will hopefully avoid an endless bug cycle in this area. Changes: - Always used properlyDominates to check safe code hoisting. - The insertion point provided to SCEV is now considered a lower bound. This is usually a block terminator or the use itself. Under no cirumstance may SCEVExpander insert below this point. - LSR is reponsible for finding a "canonical" insertion point across expansion of different expressions. - Robust logic to determine whether IV increments are in "expanded" form and/or can be safely hoisted above some insertion point. Fixes PR11783: SCEVExpander assert. llvm-svn: 148535
-
Greg Clayton authored
system and also deal with dsymForUUID being available on the network, locally, and not at all. llvm-svn: 148534
-
Ted Kremenek authored
Reenable DeadStoresChecker under --analyze, and move the IdempotentOperationsChecker to the 'experimental' category. Fixes <rdar://problem/10146347>. llvm-svn: 148533
-
Craig Topper authored
llvm-svn: 148532
-
Ted Kremenek authored
Implement checker that looks for calls to mktemps and friends that have fewer than 6 Xs. Implements <rdar://problem/6336672>. llvm-svn: 148531
-
Rafael Espindola authored
Release+Asserts build with -DBUILD_SHARED_LIBS=ON, the install directory goes from 72MB to 70MB. llvm-svn: 148530
-
Greg Clayton authored
of the identifier name in the binary images section. Improved the regular expression for the frames. Added a new file "crashlog.lldb" which can be sourced with "command source" that will import the module and set itself up to be used as a command. llvm-svn: 148529
-
Greg Clayton authored
module (you can't import a module with a '-' in it) and also added a Symbolcate(...) top level function so it can be imported and used as an LLDB command. Then you can import the module and map a "crashlog" command (for darwin use only currently) to the python function "crashlog.Symbolicate": (lldb) script import crashlog (lldb) command script add -f crashlog.Symbolicate crashlog Then use it to symbolicate: (lldb) crashlog --crash-log /path/to/foo.crash The crash log will then get symbolicated and inline frames will be added to the crash log and the frames will be displayed. The crash log currently will only try and fetch and setup the target images requires in order to do the symbolication. This will need to be iterated upon, but it is getting close to being useful so I am going to check this in. llvm-svn: 148528
-
Greg Clayton authored
llvm-svn: 148527
-