- Aug 14, 2014
-
-
Rafael Espindola authored
auroraux.org is not resolving. I will add this to the release notes as soon as I figure out where to put the 3.6 release notes :-) llvm-svn: 215645
-
Rafael Espindola authored
auroraux.org is not resolving. llvm-svn: 215644
-
Aaron Ballman authored
llvm-svn: 215643
-
Aaron Ballman authored
Silencing an MSVC C4334 warning ('<<' : result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)). NFC. llvm-svn: 215642
-
Timur Iskhodzhanov authored
[ASan/Win] Slightly update&relax test expectations to work with both -MT and -MD (in progress, PR20214) CRTs llvm-svn: 215641
-
Toma Tabacu authored
Summary: This is done by removing some hardcoded registers like $at or expecting a single digit register to be selected. Contains work done by Matheus Almeida. Reviewers: matheusalmeida, dsanders Reviewed By: dsanders Subscribers: tomatabacu Differential Revision: http://reviews.llvm.org/D4227 llvm-svn: 215640
-
Alexander Kornienko authored
llvm-svn: 215639
-
Timur Iskhodzhanov authored
llvm-svn: 215638
-
Chandler Carruth authored
lowering scheme. Currently, this just directly bails to the fallback path of splitting the 256-bit vector into two 128-bit vectors, operating there, and then joining the results back together. While the results are far from perfect, they are *shockingly* good for what we're doing here. I'll be layering the rest of the functionality on top of this piece by piece and updating tests as I go. Note that 256-bit vectors in this mode are still somewhat WIP. While I think the code paths that I'm adding here are clean and good-to-go, there are still a lot of 128-bit assumptions that I'll need to stomp out as I march through the functional spread here. llvm-svn: 215637
-
Zoran Jovanovic authored
Differential Revision: http://reviews.llvm.org/D3545 llvm-svn: 215636
-
Dan Liew authored
informative by stating where the output is going. llvm-svn: 215635
-
Dan Liew authored
treated as errors (which is still the default). This is useful when working on documentation that has existing errors. llvm-svn: 215634
-
Daniel Jasper authored
Before: template <class T> T *f(T &c) // Problem here: no line break before f { return NULL; } After: template <class T> T * f(T &c) { return NULL; } Patch by Marek Kurdej, thank you! llvm-svn: 215633
-
Daniel Jasper authored
Before: x = * a(x) = *a(y); After: x = *a(x) = *a(y); llvm-svn: 215632
-
Daniel Jasper authored
Before: typedef size_t (*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)( const aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa *aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa); After: typedef size_t (*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)( const aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa * aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa); llvm-svn: 215631
-
Toma Tabacu authored
Summary: This pseudo-instruction allows the programmer to load an address from a symbolic expression into a register. Patch by David Chisnall. His work was sponsored by: DARPA, AFRL I've made some minor changes to the original, such as improving the formatting and adding some comments, and I've also added a test case. Reviewers: dsanders Reviewed By: dsanders Differential Revision: http://reviews.llvm.org/D4808 llvm-svn: 215630
-
Pekka Jaaskelainen authored
address spaces. llvm-svn: 215629
-
Daniel Sanders authored
Summary: getCanHaveModuleDir() is renamed to isModuleDirectiveAllowed(), and setCanHaveModuleDir() is renamed to forbidModuleDirective() since it is only ever given a false argument. Reviewers: vmedic Reviewed By: vmedic Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D4885 llvm-svn: 215628
-
Andreas Simbuerger authored
llvm-svn: 215627
-
Andreas Simbuerger authored
llvm-svn: 215626
-
Andreas Simbuerger authored
Store the llvm::Value pointers of the AliasSet instead of the AliasSet itself. We have to be careful about changed IR when the message is generated, because the Value pointers might not exist anymore. This would render the Diagnostic invalid. For now we just assert there. Simply do not retreive a diagnostic message after the IR has changed it's not valid information anyway. llvm-svn: 215625
-
Andreas Simbuerger authored
This usually happens when TempScopInfo calls isMaxRegionInScop(..), so don't fail there. llvm-svn: 215624
-
Andreas Simbuerger authored
llvm-svn: 215623
-
Chandler Carruth authored
input node after manually adding it to the worklist and using CombineTo. Once we use CombineTo the input node may have been deleted. Despite this being *completely confusing* and somewhat broken, the only way to "correctly" return from a DAG combine after potentially deleting the input node is to return *that exact node*.... But really, this code should just never have used CombineTo. It won't do what it wants (returning the node as mentioned above just causes the combine to infloop). The correct way to combine away a casted load to a load of the correct type is to RAUW the chain directly and then return the loaded value to replace the actual value node. I managed to find this with the vector shuffle fuzzer even though it clearly has nothing at all to do with vector shuffles and rather those happen to trigger a load of a constant pool that hits this combine *just right*. I've included the test as it is small and a nice stress test that the infrastructure isn't asserting. llvm-svn: 215622
-
David Majnemer authored
Proof using CVC3 follows: $ cat t.cvc A, B : BITVECTOR(32); QUERY BVXOR((A | ~B),(~A |B)) = BVXOR(A,B); $ cvc3 t.cvc Valid. Patch by Mayur Pandey! Differential Revision: http://reviews.llvm.org/D4883 llvm-svn: 215621
-
David Majnemer authored
GCC was emitting a signed vs unsigned comparison warning. llvm-svn: 215620
-
David Majnemer authored
Transform ((B | C) & A) | B --> B | (A & C) Z3 Link: http://rise4fun.com/Z3/hP6p Patch by Sonam Kumari! Differential Revision: http://reviews.llvm.org/D4865 llvm-svn: 215619
-
David Majnemer authored
It doesn't really make sense to try and do stuff with #pragma init_seg when targeting non-Microsoft platforms; notions like library vs user initializers don't exist for other targets. This fixes PR20639. llvm-svn: 215618
-
Richard Smith authored
avoids users of AllDiagnostics.h from needing to pregenerate *all* generated headers. Hopefully this will make my modules buildbot happier... llvm-svn: 215617
-
Richard Smith authored
declaration has its definition instantiated in two sibling modules and they use a partial specialization. llvm-svn: 215616
-
Saleem Abdulrasool authored
As X86MCAsmInfoDarwin uses '##' as CommentString although a single '#' starts a comment a workaround for this special case is added. Fixes divisions in constant expressions for the AArch64 assembler and other targets which use '//' as CommentString. Patch by Janne Grunau! llvm-svn: 215615
-
Justin Bogner authored
Currently when laying out bitfields that don't need any padding, we represent them as a wide enough int to contain all of the bits. This can be hard on the backend since we'll do things like represent stores to a few bits as loading an i144, masking it with a large constant, and storing it back. This turns up in less pathological cases where we load and mask 64 bit word on a 32 bit platform when we actually only need to access 32 bits. This leads to bad code being generated in most of our 32 bit backends. In practice, there are often natural breaks in bitfields, and it's a fairly simple and effective heuristic to split these fields into legal integer sized chunks when it will be equivalent (ie, it won't force us to add any extra padding). llvm-svn: 215614
-
Lang Hames authored
Patch by Anthony Pesch. Thanks Anthony! llvm-svn: 215613
-
Richard Smith authored
definitions (because some other declaration declares a special member that isn't present in the canonical definition), we need to search *all* of them; we can't just stop when we find the requested name in any of the definitions, because that can fail to find things (and in particular, it can fail to find the member of the canonical declaration and return a bogus ODR failure). llvm-svn: 215612
-
Chandler Carruth authored
combining by replacing it with something else but not re-process the node afterward to remove it. In a truly remarkable stroke of bad luck, this would (in the test case attached) end up getting some other node combined into it without ever getting re-processed. By adding it back on to the worklist, in addition to deleting the dead nodes more quickly we also ensure that if it *stops* being dead for any reason it makes it back through the legalizer. Without this, the test case will end up failing during instruction selection due to an and node with a type we don't have an instruction pattern for. It took many million runs of the shuffle fuzz tester to find this. llvm-svn: 215611
-
Michael J. Spencer authored
llvm-svn: 215610
-
David Majnemer authored
This fixes a regression I caused back in r211766. llvm-svn: 215609
-
Greg Clayton authored
Don't enable STDIN for cases where we are supplying lines to be run in the embedded python interpreter. <rdar://problem/17949057> llvm-svn: 215608
-
NAKAMURA Takumi authored
llvm-svn: 215607
-
Alexey Samsonov authored
llvm-svn: 215606
-