{"push_id":1024820072,"size":230,"distinct_size":230,"ref":"refs/heads/master","head":"2316a38783532c629f6befe90f5fbcc47b2f9667","before":"549aad9fb0b88300f815f7222cda572d77f8b588","commits":[{"sha":"c4714b565adc61743ff2b8ee8e9a07a924ef49ab","author":{"email":"9d938db41bf7d07f88e8d8adba89b477eaafa4d6@metafoo.co.uk","name":"Richard Smith"},"message":"Clean up this code, NFC.\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256607 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/c4714b565adc61743ff2b8ee8e9a07a924ef49ab"},{"sha":"a9fd39d765934cffc0267a6bdfaf63f127e475d5","author":{"email":"a6a97665bebbe7020828dae03f9b588f719350c6@google.com","name":"James Y Knight"},"message":"[TrailingObjects] Convert CastExpr and subclasses.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256608 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/a9fd39d765934cffc0267a6bdfaf63f127e475d5"},{"sha":"430fa3f40afecf03bc5af967139d4eb476770ed8","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Stop using two bogus types as stand-ins for flags\nindicating the nature of the default argument in a ParmVarDecl.\n\nInstead, this adds a proper enum stored exclusively in the ParmVarDecl\nbits (which we have plenty of) for this. This even allows us to track\na previously unrepresented state in Clang when we parse a function\ndeclaration with a default argument on a parameter but we cannot even\nform an invalid expression node (for example, it is an invalid token).\nNow, we can model this state in the AST at least, and potentially\nimprove recovery in this area in the future.\n\nI've also cleaned up the functions managing both variable initializer\nexpressions and parameter default argument expresssions as much as\npossible. I've left some comments about further improvements based on\na discussion with Richard Smith. Lots of credit to him for walking me\nthrough exactly which of the *many* tradeoffs here he felt was the best\nfit.\n\nShould be NFC for now. I've tried my best to preserve existing behavior.\n\nThis is part of a series of patches to allow LLVM to check for complete\npointee types when computing its pointer traits. This is absolutely\nnecessary to get correct (or reproducible) results for things like how\nmany low bits are guaranteed to be zero.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256609 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/430fa3f40afecf03bc5af967139d4eb476770ed8"},{"sha":"7758708fb87e065dc1851bfa8906e5611daca238","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Switch from a really wasteful SmallDenseMap of\nSmallVector<.., 16> (16!!!!) objects to a simple SmallVector of pairs.\n\nThis no longer de-duplicates the common function pointers used during\ndeallocation, but this doesn't really seem worth the complexity and\noverhead of managing the map-of-vectors. Notably, there is no reason to\nassume that functions have the 4-byte alignment that DenseMap relies on,\nand indeed this prevents checking the alignment of the DenseMap keys\nbecause we can't even meaningfully query the alignment of functions\nusing our existing alignment tools.\n\nGenerally, function pointers don't seem like a great idea for keys in\na DenseMap. =]\n\nI chatted with Richard Smith about this a bit as well and have written\ndown a FIXME because this *does* waste some memory and in general seems\na very clumsy memory management strategy. He would like to see a more\nfundamental fix eventually here that tries to build a better pattern.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256610 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/7758708fb87e065dc1851bfa8906e5611daca238"},{"sha":"5b65e863159b4a6c3ac223384716bcff558d99c1","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Switch the Redeclarable template to using a void pointer in\nits PointerUnion rather than an ASTContext pointer.\n\nUsing pointers with PointerUnion really should be checking the pointee\ntype's alignment, and we can't do this without the complete type. The\nRedeclarable template inherently can't know the complete type of\nASTContext because of its layering, and because it is a template its\nmethods can't reasonably be out-of-line the way we traditionally solve\ncircular references within the AST library.\n\nAfter discussing this with Richard Smith, his suggestion which I have\nimplemented here was to just drop to a void* for the PointerUnion. This\nessentially documents that we're going to completely ignore the type\n(including its potential alignment consequences) for this code. There\nare still of course dynamic guards that this ended up working correctly,\nand because of the way the code is factored this doesn't leak outside of\nthe very narrow implementation guts of Redeclarable.\n\nThis is part of a series of patches to allow LLVM to check for complete\npointee types when computing its pointer traits. This is absolutely\nnecessary to get correct (or reproducible) results for things like how\nmany low bits are guaranteed to be zero.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256611 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/5b65e863159b4a6c3ac223384716bcff558d99c1"},{"sha":"df975ea8cb338ce9b2176542c846345a14f7486b","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Move methods manipulating PointerUnions, DenseMap pointer\nkeys, and PointerIntPairs where the pointee types are incomplete\nout-of-line to where we have the complete type.\n\nThis is the standard pattern used throughout the AST library to address\nthe inherently mutually cross referenced nature of the AST.\n\nThis is part of a series of patches to allow LLVM to check for complete\npointee types when computing its pointer traits. This is absolutely\nnecessary to get correct (or reproducible) results for things like how\nmany low bits are guaranteed to be zero.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256612 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/df975ea8cb338ce9b2176542c846345a14f7486b"},{"sha":"dd3ec833ccfe6171f4abfd0c48a8e73ea437810e","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Move a class definition up to the top of this header so it\ncan be referenced as part of a PointerIntPair.\n\nThis is part of a series of patches to allow LLVM to check for complete\npointee types when computing its pointer traits. This is absolutely\nnecessary to get correct (or reproducible) results for things like how\nmany low bits are guaranteed to be zero.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256613 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/dd3ec833ccfe6171f4abfd0c48a8e73ea437810e"},{"sha":"52996d2bc4a8eaee76d9bca0034fa5f52bbf5091","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Add #includes of headers rather than forward declarations\nfor types which are used as pointees in PointerUnions, PointerIntPairs,\nand DenseMap pointer keys.\n\nThis is part of a series of patches to allow LLVM to check for complete\npointee types when computing its pointer traits. This is absolutely\nnecessary to get correct (or reproducible) results for things like how\nmany low bits are guaranteed to be zero.\n\nI think this is the last patch for getting Clang clean here!!!\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256615 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/52996d2bc4a8eaee76d9bca0034fa5f52bbf5091"},{"sha":"9559085cc9d1fce0685cdf325b46ae2d0c8dbb3e","author":{"email":"a6a97665bebbe7020828dae03f9b588f719350c6@google.com","name":"James Y Knight"},"message":"Fix alignment issue in CodeGenFunction::PopCleanupBlock.\n\nIt was copying an EHCleanupStack::Cleanup object into a\nSmallVector<char>, with a comment saying that SmallVector's alignment is\nalways large enough. Unfortunately, that isn't actually true after\nr162331 in 2012.\n\nExpand the code (somewhat distastefully) to get a stack allocation with\na correct alignment.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256619 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/9559085cc9d1fce0685cdf325b46ae2d0c8dbb3e"},{"sha":"c8051623bfb6162b2004a9b7033e39faa24d6ef9","author":{"email":"fbe9e45cbb51ebd86366cc402735e3c7e9b1e064@gmail.com","name":"David Majnemer"},"message":"[MS ABI] Improve our mangling of pass_object_size\n\nWe didn't add the artificial pass_object_size arguments to the\nbackreference map which bloated the size of manglings which involved\npass_object_size with duplicate types.\n\nThis lets us go from:\n?qux@PassObjectSize@@YAHQAHW4__pass_object_size1@__clang@@0W4__pass_object_size1@3@@Z\n\nto:\n?qux@PassObjectSize@@YAHQAHW4__pass_object_size1@__clang@@01@Z\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256622 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/c8051623bfb6162b2004a9b7033e39faa24d6ef9"},{"sha":"b1217ccafd1f81b241bb53e2e79888de2f8410c2","author":{"email":"fbe9e45cbb51ebd86366cc402735e3c7e9b1e064@gmail.com","name":"David Majnemer"},"message":"[MS ABI] Add variable templates to the NameBackReferences\n\nOnly function template specializations are exempt from being added to\nthe NameBackReferences.  Redundant variable template specializations\nshould be appropriately substituted.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256623 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/b1217ccafd1f81b241bb53e2e79888de2f8410c2"},{"sha":"60d3ad956c28dc96de6ab3deec3885b3481018cb","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Some compilers (older Clang? unsure) on build bots need\nthis constructor to be out of line in order to not require the complete\ntype of TemplateDecl.\n\nHopefully this will fix the build bots.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256629 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/60d3ad956c28dc96de6ab3deec3885b3481018cb"},{"sha":"61b25c247dd7a01cfdb1f49e189b935f9ff5ce91","author":{"email":"420c9fb3407b8e11ac322a0e7703f7b1f526df04@gmail.com","name":"Chandler Carruth"},"message":"[ptr-traits] Add another complete type that is necessary for at least\nsome of the build bots. Still can't reproduce these failures locally.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256630 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/61b25c247dd7a01cfdb1f49e189b935f9ff5ce91"},{"sha":"dd4bfa19073ab07b62fe70f1005c011e62495f43","author":{"email":"44c662dede9386ce8dc9e1ae02a889b6651f17c4@google.com","name":"Daniel Jasper"},"message":"clang-format: [JS] Support TypeScript 1.6 user defined type guards.\n\nBefore:\n  function foo(check: Object): check\n  is{foo: string, bar: string, baz: string, foobar: string} {\n    return 'bar' in check;\n  }\n\nAfter:\n  function foo(check: Object):\n      check is {foo: string, bar: string, baz: string, foobar: string} {\n    return 'bar' in check;\n  }\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256631 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/dd4bfa19073ab07b62fe70f1005c011e62495f43"},{"sha":"7cb0f44064ce59db2da9e2a91ea53daa939a448c","author":{"email":"42c60520d22f29ab4fbd7ab379c1a50cda8b3dfa@hotmail.com","name":"Alexey Bataev"},"message":"[OPENMP 4.5] Allow 'ordered' clause on 'loop simd' constructs.\nOpenMP 4.5 allows to use 'ordered' clause without parameter on 'loop simd' constructs.\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256639 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/7cb0f44064ce59db2da9e2a91ea53daa939a448c"},{"sha":"a7cb7ce92b757630b6ee6a0834ae80bf49a9aceb","author":{"email":"44c662dede9386ce8dc9e1ae02a889b6651f17c4@google.com","name":"Daniel Jasper"},"message":"clang-format: Slightly row back on r256343 by increasing penalty for\nbreaking between array subscripts.\n\nBefore:\n  if (aaaaaaaaaaaaaaaaaaaaaaaa && aaaaaaaaaaaaaaaaaaa[aaaaaaaaaaaaa]\n                                                     [aaaaaaaaaaaaa])\nAfter:\n  if (aaaaaaaaaaaaaaaaaaaaaaaa &&\n      aaaaaaaaaaaaaaaaaaa[aaaaaaaaaaaaa][aaaaaaaaaaaaa])\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256640 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/a7cb7ce92b757630b6ee6a0834ae80bf49a9aceb"},{"sha":"f1f0c5f32f0b6dc2c6ed3c89545bb79ae00c1fce","author":{"email":"1cd424918902c1dbc16c61ea09f30b31f6c2f0e9@freebsd.org","name":"Davide Italiano"},"message":"Disable generating movt on FreeBSD.\n\nIt's sort of an hack, but we have no choice.\nThe linker in the base system doesn't handle that correctly (yet).\nOnce FreeBSD will import lld, this can be backed out.\n\nPatch by: Andrew Turner!\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256641 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/f1f0c5f32f0b6dc2c6ed3c89545bb79ae00c1fce"},{"sha":"aae68988f5a4dd42d4513f41c9b8d1b55dd6c7d9","author":{"email":"5a7a6a189b47cd31d24667a751e4003cd04eced5@aaronballman.com","name":"Aaron Ballman"},"message":"When performing an implicit from float to bool, the floating point value must be *exactly* zero in order for the conversion to result in 0. This does not involve a conversion through an integer value, and so truncation of the value is not performed.\n\nThis patch address PR25876.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256643 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/aae68988f5a4dd42d4513f41c9b8d1b55dd6c7d9"},{"sha":"7607e78a6e9643f51844bb82d01f5823d8384074","author":{"email":"5a7a6a189b47cd31d24667a751e4003cd04eced5@aaronballman.com","name":"Aaron Ballman"},"message":"Silencing a -Wcast-qual warning; NFC.\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256644 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/7607e78a6e9643f51844bb82d01f5823d8384074"},{"sha":"88ece4a3de8004f92e6b4c27508b0ca3e54596d3","author":{"email":"9d938db41bf7d07f88e8d8adba89b477eaafa4d6@metafoo.co.uk","name":"Richard Smith"},"message":"Implement [temp.deduct.type]p6: if the nested-name-specifier of a type is\ndependent, the type is a non-deduced context.\n\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256651 91177308-0d34-0410-b5e6-96231b3b80d8","distinct":true,"url":"https://api.github.com/repos/taekwonbilly/Cilk-Clang/commits/88ece4a3de8004f92e6b4c27508b0ca3e54596d3"}]}