r313907 - Suppress Wsign-conversion for enums with matching underlying type

2017-09-21 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 21 12:58:55 2017 New Revision: 313907 URL: http://llvm.org/viewvc/llvm-project?rev=313907&view=rev Log: Suppress Wsign-conversion for enums with matching underlying type As reported here: https://bugs.llvm.org/show_bug.cgi?id=34692 A non-defined enum with a backi

r313909 - Add testcase I forgot to add in R313907.

2017-09-21 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 21 13:14:08 2017 New Revision: 313909 URL: http://llvm.org/viewvc/llvm-project?rev=313909&view=rev Log: Add testcase I forgot to add in R313907. Added: cfe/trunk/test/SemaCXX/warn-sign-conversion-cpp11.cpp (with props) Added: cfe/trunk/test/SemaCXX/warn-sig

r313911 - Remove svn-properties for file added in 313909 (NFC)

2017-09-21 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 21 13:31:01 2017 New Revision: 313911 URL: http://llvm.org/viewvc/llvm-project?rev=313911&view=rev Log: Remove svn-properties for file added in 313909 (NFC) Modified: cfe/trunk/test/SemaCXX/warn-sign-conversion-cpp11.cpp (props changed) Propchange: cfe/trun

r314229 - [Sema] Corrected the warn-on-throw-from-noexcept behavior to include nothrow

2017-09-26 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Sep 26 11:20:39 2017 New Revision: 314229 URL: http://llvm.org/viewvc/llvm-project?rev=314229&view=rev Log: [Sema] Corrected the warn-on-throw-from-noexcept behavior to include nothrow Discovered that 'nothrow' (which is supposed to be an alias for noexcept) was not w

r314235 - Allow IUnknown/IInterface types to come from extern C++

2017-09-26 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Sep 26 11:55:16 2017 New Revision: 314235 URL: http://llvm.org/viewvc/llvm-project?rev=314235&view=rev Log: Allow IUnknown/IInterface types to come from extern C++ It was brought up in response to my last implementation for this struct-as-interface features that at l

r314262 - Emit section information for extern variables.

2017-09-26 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Sep 26 16:42:34 2017 New Revision: 314262 URL: http://llvm.org/viewvc/llvm-project?rev=314262&view=rev Log: Emit section information for extern variables. Currently, if _attribute_((section())) is used for extern variables, section information is not emitted in gene

r314267 - Fix capitalization of a bunch of parameters in SemaDeclAttr [NFC]

2017-09-26 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Sep 26 20:20:13 2017 New Revision: 314267 URL: http://llvm.org/viewvc/llvm-project?rev=314267&view=rev Log: Fix capitalization of a bunch of parameters in SemaDeclAttr [NFC] Modified: cfe/trunk/lib/Sema/SemaDeclAttr.cpp Modified: cfe/trunk/lib/Sema/SemaDeclAttr.c

r314268 - Add test forgotten in r314262.

2017-09-26 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Sep 26 20:23:02 2017 New Revision: 314268 URL: http://llvm.org/viewvc/llvm-project?rev=314268&view=rev Log: Add test forgotten in r314262. Added: cfe/trunk/test/CodeGenCXX/extern-section-attribute.cpp (with props) Added: cfe/trunk/test/CodeGenCXX/extern-section

r314456 - Add Documentation to attribute-nothrow. Additionally, limit to functions.

2017-09-28 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 28 13:08:03 2017 New Revision: 314456 URL: http://llvm.org/viewvc/llvm-project?rev=314456&view=rev Log: Add Documentation to attribute-nothrow. Additionally, limit to functions. Attribute nothrow is only allowed on functions, so I added that. Additionally, it lack

r314460 - Fix test change missed in r314456

2017-09-28 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 28 13:23:43 2017 New Revision: 314460 URL: http://llvm.org/viewvc/llvm-project?rev=314460&view=rev Log: Fix test change missed in r314456 Modified: cfe/trunk/test/Misc/pragma-attribute-supported-attributes-list.test Modified: cfe/trunk/test/Misc/pragma-attrib

r314461 - [Sema] Warn on attribute nothrow conflicting with language specifiers

2017-09-28 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 28 13:36:53 2017 New Revision: 314461 URL: http://llvm.org/viewvc/llvm-project?rev=314461&view=rev Log: [Sema] Warn on attribute nothrow conflicting with language specifiers I discovered it was possible to create a 'nothrow' noexcept(false) function, which is both

r314462 - [Sema] Correct nothrow inherited by noexcept

2017-09-28 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Sep 28 13:47:10 2017 New Revision: 314462 URL: http://llvm.org/viewvc/llvm-project?rev=314462&view=rev Log: [Sema] Correct nothrow inherited by noexcept As reported in https://bugs.llvm.org/show_bug.cgi?id=33235, a noexcept function was unable to inherit from a nothro

r314557 - [Sema] Correct IUnknown to support Unknwnbase.h Header.

2017-09-29 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Sep 29 14:06:00 2017 New Revision: 314557 URL: http://llvm.org/viewvc/llvm-project?rev=314557&view=rev Log: [Sema] Correct IUnknown to support Unknwnbase.h Header. Apparently, the MSVC SDK has a strange implementation that causes a number of implicit functions as well

r314687 - Update IUnknown lit test to pass on Win32

2017-10-02 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 2 09:49:32 2017 New Revision: 314687 URL: http://llvm.org/viewvc/llvm-project?rev=314687&view=rev Log: Update IUnknown lit test to pass on Win32 Modified: cfe/trunk/test/SemaCXX/ms-iunknown-template-function.cpp Modified: cfe/trunk/test/SemaCXX/ms-iunknown-t

r314939 - Fix 'section' warning behavior with tentatively-defined values

2017-10-04 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Oct 4 15:16:24 2017 New Revision: 314939 URL: http://llvm.org/viewvc/llvm-project?rev=314939&view=rev Log: Fix 'section' warning behavior with tentatively-defined values As reported on cfe-commits, r314262 resulted in tentatively-defined variables not being excluded

r315075 - Split X86::BI__builtin_cpu_init handling into own function[NFC]

2017-10-06 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Oct 6 09:40:45 2017 New Revision: 315075 URL: http://llvm.org/viewvc/llvm-project?rev=315075&view=rev Log: Split X86::BI__builtin_cpu_init handling into own function[NFC] The Cpu Init functionality is required for the target attribute, so this patch simply splits it

r315638 - [Sema][Crash] Correctly handle an non-dependent noexcept expr in function template

2017-10-12 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Oct 12 16:01:53 2017 New Revision: 315638 URL: http://llvm.org/viewvc/llvm-project?rev=315638&view=rev Log: [Sema][Crash] Correctly handle an non-dependent noexcept expr in function template It seems that all of the other templated cases are handled correctly, howeve

r315929 - Clarify the 'interrupt' names in Attribute Docs

2017-10-16 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 16 13:13:36 2017 New Revision: 315929 URL: http://llvm.org/viewvc/llvm-project?rev=315929&view=rev Log: Clarify the 'interrupt' names in Attribute Docs All 4 of the 'interrupt' headers were automatically named 'interrupt'. This patch gives them unique names. Modi

r315931 - Sort Attributes by "HeaderName"

2017-10-16 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 16 13:31:05 2017 New Revision: 315931 URL: http://llvm.org/viewvc/llvm-project?rev=315931&view=rev Log: Sort Attributes by "HeaderName" Attributes in the docs were previously sorted (apparently) by the attribute name, so AnyX86Interrupt ended up being the first o

r315934 - Remove AnyX86Interrupt documentation

2017-10-16 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 16 13:44:14 2017 New Revision: 315934 URL: http://llvm.org/viewvc/llvm-project?rev=315934&view=rev Log: Remove AnyX86Interrupt documentation This documentation was copied directly from the GCC documentaiton in r257867. Reverting and alterting the original author

r315950 - Replace usage of std::stringstream with raw_string_ostream

2017-10-16 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 16 15:47:26 2017 New Revision: 315950 URL: http://llvm.org/viewvc/llvm-project?rev=315950&view=rev Log: Replace usage of std::stringstream with raw_string_ostream Typically we don't use the stringstream, so instead use raw_string_stream. Additionally, the depende

r315956 - Fix usage in TableGen of getValueAsString

2017-10-16 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 16 16:25:24 2017 New Revision: 315956 URL: http://llvm.org/viewvc/llvm-project?rev=315956&view=rev Log: Fix usage in TableGen of getValueAsString Record::getValueAsString returns a stringref to an interned string (apparently had been changed since most of tablegen

r316015 - Replace use of SmallVector::back + pop_back with pop_back_val

2017-10-17 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 17 10:45:21 2017 New Revision: 316015 URL: http://llvm.org/viewvc/llvm-project?rev=316015&view=rev Log: Replace use of SmallVector::back + pop_back with pop_back_val I ran across an instance where the value was being loaded out via back, then immediately popped.

r316030 - [CFG] Relax Wexceptions warning on rethrow

2017-10-17 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 17 13:57:24 2017 New Revision: 316030 URL: http://llvm.org/viewvc/llvm-project?rev=316030&view=rev Log: [CFG] Relax Wexceptions warning on rethrow As reported here: https://bugs.llvm.org/show_bug.cgi?id=34973 "catch(...)" should catch EVERYTHING, even a rethrow.

r305087 - support operator keywords used in Windows SDK

2017-06-09 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Jun 9 11:29:35 2017 New Revision: 305087 URL: http://llvm.org/viewvc/llvm-project?rev=305087&view=rev Log: support operator keywords used in Windows SDK to support operator keywords used in Windows SDK, alter token type when seen in system headers Hello, I submitte

r305128 - Support operator keywords used in Windows SDK(fix ubsan)

2017-06-09 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Jun 9 17:50:02 2017 New Revision: 305128 URL: http://llvm.org/viewvc/llvm-project?rev=305128&view=rev Log: Support operator keywords used in Windows SDK(fix ubsan) UBSan found an issue with a nullptr being assigned to a reference. This was because a following functio

r305425 - [Preprocessor]Correct Macro-Arg allocation of StringifiedArguments,

2017-06-14 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jun 14 18:09:01 2017 New Revision: 305425 URL: http://llvm.org/viewvc/llvm-project?rev=305425&view=rev Log: [Preprocessor]Correct Macro-Arg allocation of StringifiedArguments, correct getNumArguments StringifiedArguments is allocated (resized) based on the size the

[clang-tools-extra] r305426 - Update callbacks tracker to match change in 305425

2017-06-14 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jun 14 18:15:51 2017 New Revision: 305426 URL: http://llvm.org/viewvc/llvm-project?rev=305426&view=rev Log: Update callbacks tracker to match change in 305425 Modified: clang-tools-extra/trunk/pp-trace/PPCallbacksTracker.cpp Modified: clang-tools-extra/trunk/pp-t

[clang-tools-extra] r305434 - Update Append Argument to more efficiently traverse tokens

2017-06-14 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jun 14 19:27:23 2017 New Revision: 305434 URL: http://llvm.org/viewvc/llvm-project?rev=305434&view=rev Log: Update Append Argument to more efficiently traverse tokens This function was previously making (correct) assumptions without complete knowledge of MacroArgs gua

r305435 - Fix LexerTest signed/unsigned comparison.

2017-06-14 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jun 14 19:28:13 2017 New Revision: 305435 URL: http://llvm.org/viewvc/llvm-project?rev=305435&view=rev Log: Fix LexerTest signed/unsigned comparison. Werror was catching a signed/unsigned compare in an assert, correct the signed 'expected' value to be unsigned. Modi

r305491 - LexerTest memory leak fix-

2017-06-15 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Jun 15 13:34:47 2017 New Revision: 305491 URL: http://llvm.org/viewvc/llvm-project?rev=305491&view=rev Log: LexerTest memory leak fix- A new LexerTest unittest introduced a memory leak. This patch uses a unique_ptr with a custom deleter to ensure it is properly delet

r305812 - Fix for Bug 33471: Preventing operator auto from resolving to a template operator.

2017-06-20 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Jun 20 12:38:07 2017 New Revision: 305812 URL: http://llvm.org/viewvc/llvm-project?rev=305812&view=rev Log: Fix for Bug 33471: Preventing operator auto from resolving to a template operator. As the bug report says, struct A { template operator T(); }; void foo()

r305928 - Correct VectorCall x86 (32 bit) behavior for SSE Register Assignment

2017-06-21 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jun 21 11:37:22 2017 New Revision: 305928 URL: http://llvm.org/viewvc/llvm-project?rev=305928&view=rev Log: Correct VectorCall x86 (32 bit) behavior for SSE Register Assignment In running some internal vectorcall tests in 32 bit mode, we discovered that the behavior

r306149 - Emit warning when throw exception in destruct or dealloc functions which has a

2017-06-23 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Jun 23 15:22:19 2017 New Revision: 306149 URL: http://llvm.org/viewvc/llvm-project?rev=306149&view=rev Log: Emit warning when throw exception in destruct or dealloc functions which has a (possible implicit) noexcept specifier Throwing in the destructor is not good (C

r306156 - Add test for 306149, warn on throw from noexcept

2017-06-23 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Jun 23 15:30:33 2017 New Revision: 306156 URL: http://llvm.org/viewvc/llvm-project?rev=306156&view=rev Log: Add test for 306149, warn on throw from noexcept Added: cfe/trunk/test/SemaCXX/warn-throw-out-noexcept-func.cpp Added: cfe/trunk/test/SemaCXX/warn-throw-ou

r307172 - Address comments that escaped D33333

2017-07-05 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jul 5 09:43:45 2017 New Revision: 307172 URL: http://llvm.org/viewvc/llvm-project?rev=307172&view=rev Log: Address comments that escaped D3 Patch By: Jen Yu Differential Revision:https://reviews.llvm.org/D34671 Modified: cfe/trunk/include/clang/Basic/Diagno

r311683 - [Preprocessor] Correct internal token parsing of newline characters in CRLF

2017-08-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Aug 24 11:36:07 2017 New Revision: 311683 URL: http://llvm.org/viewvc/llvm-project?rev=311683&view=rev Log: [Preprocessor] Correct internal token parsing of newline characters in CRLF Discovered due to a goofy git setup, the test system-headerline-directive.c (and a

r311732 - Remove .gitattributes, add comment to lineendings.

2017-08-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Aug 24 16:25:05 2017 New Revision: 311732 URL: http://llvm.org/viewvc/llvm-project?rev=311732&view=rev Log: Remove .gitattributes, add comment to lineendings. Removed: cfe/trunk/test/Frontend/.gitattributes Modified: cfe/trunk/test/Frontend/system-header-line-

r311905 - Change Diagnostic Category size error from runtime to compiletime

2017-08-28 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Aug 28 11:53:17 2017 New Revision: 311905 URL: http://llvm.org/viewvc/llvm-project?rev=311905&view=rev Log: Change Diagnostic Category size error from runtime to compiletime Diagnostic Categories are fairly annoying, and are only enforced by a runtime-debug-only asser

r312173 - [CodeGen][x86_64] Enable 'force_align_arg_pointer' attribute at x86_64

2017-08-30 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Aug 30 14:17:40 2017 New Revision: 312173 URL: http://llvm.org/viewvc/llvm-project?rev=312173&view=rev Log: [CodeGen][x86_64] Enable 'force_align_arg_pointer' attribute at x86_64 This attribute is useful in OS development when we jump from 32 to 64 bit code and expect

r312281 - Add documentation for force_align_arg_pointer function attribute

2017-08-31 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Aug 31 14:08:24 2017 New Revision: 312281 URL: http://llvm.org/viewvc/llvm-project?rev=312281&view=rev Log: Add documentation for force_align_arg_pointer function attribute Patch By: anatol.pomozov (anatol.pomo...@gmail.com) Differential Revision: https://reviews.ll

r312355 - [CodeGen]Refactor CpuSupports/CPUIs Builtin Code Gen to better work with

2017-09-01 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Sep 1 12:42:45 2017 New Revision: 312355 URL: http://llvm.org/viewvc/llvm-project?rev=312355&view=rev Log: [CodeGen]Refactor CpuSupports/CPUIs Builtin Code Gen to better work with "target" implementation A small set of refactors that'll make it easier for me to impl

r312542 - [Preprocessor] Correct internal token parsing of newline characters in CRLF

2017-09-05 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Sep 5 10:32:36 2017 New Revision: 312542 URL: http://llvm.org/viewvc/llvm-project?rev=312542&view=rev Log: [Preprocessor] Correct internal token parsing of newline characters in CRLF Correct implementation: Apparently I managed in r311683 to submit the wrong version

r313364 - Fix the __interface inheritence rules to work better with IUnknown and IDispatch

2017-09-15 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Sep 15 09:03:35 2017 New Revision: 313364 URL: http://llvm.org/viewvc/llvm-project?rev=313364&view=rev Log: Fix the __interface inheritence rules to work better with IUnknown and IDispatch __interface objects in MSVC are permitted to inherit from __interface types, a

r302720 - Fix errored return value in CheckFunctionReturnType and add a fixit hint

2017-05-10 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed May 10 15:03:16 2017 New Revision: 302720 URL: http://llvm.org/viewvc/llvm-project?rev=302720&view=rev Log: Fix errored return value in CheckFunctionReturnType and add a fixit hint As discovered by ChenWJ and listed on cfe-dev, the error for Objective C return type e

r303798 - For Microsoft compatibility, set fno_operator_names

2017-05-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed May 24 14:31:19 2017 New Revision: 303798 URL: http://llvm.org/viewvc/llvm-project?rev=303798&view=rev Log: For Microsoft compatibility, set fno_operator_names There's a Microsoft header in the Windows SDK which won't compile with clang because it uses an operator na

[clang-tools-extra] r303872 - Disable MSVC-Compat mode for two tests that use C++Operator Names

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 10:39:24 2017 New Revision: 303872 URL: http://llvm.org/viewvc/llvm-project?rev=303872&view=rev Log: Disable MSVC-Compat mode for two tests that use C++Operator Names MSVC doesn't support C++ operator names (using 'or' instead of ||, 'not' instead of '!', etc)

[clang-tools-extra] r303877 - Clang-tidy doesn't understand -fno-ms-compatibility, so just removing 'not'

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 11:07:19 2017 New Revision: 303877 URL: http://llvm.org/viewvc/llvm-project?rev=303877&view=rev Log: Clang-tidy doesn't understand -fno-ms-compatibility, so just removing 'not' Modified: clang-tools-extra/trunk/test/clang-tidy/readability-implicit-bool-cas

[clang-tools-extra] r303881 - Revert 303872/303877 since the patch that caused these issues

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 11:23:00 2017 New Revision: 303881 URL: http://llvm.org/viewvc/llvm-project?rev=303881&view=rev Log: Revert 303872/303877 since the patch that caused these issues is also being reverted. Modified: clang-tools-extra/trunk/test/clang-tidy/readability-implic

r303882 - Revert MSVC CXXOperatorNames patch due to issues with Chromium

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 11:24:49 2017 New Revision: 303882 URL: http://llvm.org/viewvc/llvm-project?rev=303882&view=rev Log: Revert MSVC CXXOperatorNames patch due to issues with Chromium Modified: cfe/trunk/lib/Frontend/CompilerInvocation.cpp cfe/trunk/test/Parser/MicrosoftEx

[clang-tools-extra] r303909 - Earlier revert introduced an extra space, remove it.

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 15:29:17 2017 New Revision: 303909 URL: http://llvm.org/viewvc/llvm-project?rev=303909&view=rev Log: Earlier revert introduced an extra space, remove it. Modified: clang-tools-extra/trunk/test/clang-tidy/readability-implicit-bool-cast.cpp Modified: clang-

r316132 - Fix capitalization of parameter

2017-10-18 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Oct 18 15:17:16 2017 New Revision: 316132 URL: http://llvm.org/viewvc/llvm-project?rev=316132&view=rev Log: Fix capitalization of parameter The .cpp file has this properly capitalized, but the header does not. Simply fixed it. Modified: cfe/trunk/include/clang/

r316166 - Fix nodiscard for volatile references

2017-10-19 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Oct 19 08:58:58 2017 New Revision: 316166 URL: http://llvm.org/viewvc/llvm-project?rev=316166&view=rev Log: Fix nodiscard for volatile references As reported here https://bugs.llvm.org/show_bug.cgi?id=34988 [[nodiscard]] warnings were not being suppressed for volatile

r316225 - Allow /showIncludes with /P

2017-10-20 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Oct 20 12:18:30 2017 New Revision: 316225 URL: http://llvm.org/viewvc/llvm-project?rev=316225&view=rev Log: Allow /showIncludes with /P r213589 was checked in as a solution to https://bugs.llvm.org/show_bug.cgi?id=20336. However, it is possible to use /EP with /P to

r316338 - Pull X86 "CPUKind" checking into .cpp file. [NFC]

2017-10-23 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 23 09:20:15 2017 New Revision: 316338 URL: http://llvm.org/viewvc/llvm-project?rev=316338&view=rev Log: Pull X86 "CPUKind" checking into .cpp file. [NFC] Preparing to do a refactor of CPU/feature checking, this patch pulls the one CPU implementation from the .h fi

r316405 - Fix template parameter default args missed if redecled

2017-10-23 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Mon Oct 23 18:39:56 2017 New Revision: 316405 URL: http://llvm.org/viewvc/llvm-project?rev=316405&view=rev Log: Fix template parameter default args missed if redecled This bug was found via self-build on lld, and worked around here: https://reviews.llvm.org/rL316180 The

r316437 - Add Forgotten test for: Fix template parameter default args missed if redecled

2017-10-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 24 06:51:07 2017 New Revision: 316437 URL: http://llvm.org/viewvc/llvm-project?rev=316437&view=rev Log: Add Forgotten test for: Fix template parameter default args missed if redecled Addendum to differential revision: https://reviews.llvm.org/D39127 Added: cf

r316447 - Fix spelling in comment, field is isMsStruct, not Strust

2017-10-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 24 08:34:59 2017 New Revision: 316447 URL: http://llvm.org/viewvc/llvm-project?rev=316447&view=rev Log: Fix spelling in comment, field is isMsStruct, not Strust Modified: cfe/trunk/include/clang/AST/Decl.h Modified: cfe/trunk/include/clang/AST/Decl.h URL: ht

r316453 - Remove repeated function name in doxygen comment.

2017-10-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 24 09:16:34 2017 New Revision: 316453 URL: http://llvm.org/viewvc/llvm-project?rev=316453&view=rev Log: Remove repeated function name in doxygen comment. Modified: cfe/trunk/include/clang/AST/Decl.h Modified: cfe/trunk/include/clang/AST/Decl.h URL: http://ll

r316518 - mplement __has_unique_object_representations

2017-10-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 24 14:31:50 2017 New Revision: 316518 URL: http://llvm.org/viewvc/llvm-project?rev=316518&view=rev Log: mplement __has_unique_object_representations A helper builtin to facilitate implementing the std::has_unique_object_representations type trait. Requested here:

r316521 - Replaced unicode characters with ASCII, as introduced in r316518.

2017-10-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 24 15:00:25 2017 New Revision: 316521 URL: http://llvm.org/viewvc/llvm-project?rev=316521&view=rev Log: Replaced unicode characters with ASCII, as introduced in r316518. Modified: cfe/trunk/lib/AST/Type.cpp Modified: cfe/trunk/lib/AST/Type.cpp URL: http://ll

r316528 - Correct behavior of fastcall when default CC is set.

2017-10-24 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Oct 24 16:12:01 2017 New Revision: 316528 URL: http://llvm.org/viewvc/llvm-project?rev=316528&view=rev Log: Correct behavior of fastcall when default CC is set. Fastcall doesn't support variadic function calls, so setting the default calling convention to Fastcall wou

r316605 - Ignore implicity casts for zero-as-null-pointer-constant warning

2017-10-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Oct 25 13:23:13 2017 New Revision: 316605 URL: http://llvm.org/viewvc/llvm-project?rev=316605&view=rev Log: Ignore implicity casts for zero-as-null-pointer-constant warning The repro in https://bugs.llvm.org/show_bug.cgi?id=34362 caused the left nullptr to be cast to

r316781 - Remove x86,x86_32/64 from isValidFeatureName

2017-10-27 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Oct 27 11:29:02 2017 New Revision: 316781 URL: http://llvm.org/viewvc/llvm-project?rev=316781&view=rev Log: Remove x86,x86_32/64 from isValidFeatureName These are not valid values for this, and are pretty non-sensical, since LLVM doesn't understand them. Differential

r316783 - Filter out invalid 'target' items from being passed to LLVM

2017-10-27 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Oct 27 11:32:23 2017 New Revision: 316783 URL: http://llvm.org/viewvc/llvm-project?rev=316783&view=rev Log: Filter out invalid 'target' items from being passed to LLVM Craig noticed that CodeGen wasn't properly ignoring the values sent to the target attribute. This pa

r316784 - Replace a few usages of llvm::join with range-version[NFC]

2017-10-27 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Oct 27 11:45:06 2017 New Revision: 316784 URL: http://llvm.org/viewvc/llvm-project?rev=316784&view=rev Log: Replace a few usages of llvm::join with range-version[NFC] I noticed a few usages of llvm::join that were using begin/end rather than just the range version. T

r317268 - Add default calling convention support for regcall.

2017-11-02 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Nov 2 14:08:00 2017 New Revision: 317268 URL: http://llvm.org/viewvc/llvm-project?rev=317268&view=rev Log: Add default calling convention support for regcall. Added support for regcall as default calling convention. Also added code to exclude main when applying defau

r318234 - Simplify CpuIs code to use include from LLVM

2017-11-14 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Nov 14 16:11:24 2017 New Revision: 318234 URL: http://llvm.org/viewvc/llvm-project?rev=318234&view=rev Log: Simplify CpuIs code to use include from LLVM LLVM exposes a file in the backend (X86TargetParser.def) that contains information about the correct list of CpuIs

r318343 - Split x86 "Processor" info into its own def file. [NFC]

2017-11-15 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Nov 15 14:25:39 2017 New Revision: 318343 URL: http://llvm.org/viewvc/llvm-project?rev=318343&view=rev Log: Split x86 "Processor" info into its own def file. [NFC] A first step toward removing the repetition of features/CPU info in the x86 target info, this patch pull

r318345 - Add X86Target.def that was forgotten in r30734

2017-11-15 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Nov 15 14:36:24 2017 New Revision: 318345 URL: http://llvm.org/viewvc/llvm-project?rev=318345&view=rev Log: Add X86Target.def that was forgotten in r30734 Added: cfe/trunk/include/clang/Basic/X86Target.def Added: cfe/trunk/include/clang/Basic/X86Target.def URL:

r299117 - Clang changes for alloc_align attribute

2017-03-30 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu Mar 30 16:48:55 2017 New Revision: 299117 URL: http://llvm.org/viewvc/llvm-project?rev=299117&view=rev Log: Clang changes for alloc_align attribute GCC has the alloc_align attribute, which is similar to assume_aligned, except the attribute's parameter is the index o

r300328 - Make Gentoo GNU GCC Config override whitespace tolerant

2017-04-14 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Fri Apr 14 10:21:18 2017 New Revision: 300328 URL: http://llvm.org/viewvc/llvm-project?rev=300328&view=rev Log: Make Gentoo GNU GCC Config override whitespace tolerant The config-*triple* file handling isn't tolerant of leading/trailing whitespace, making it not terribly

r300764 - Corrrect warn_unused_result attribute

2017-04-19 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Apr 19 16:24:55 2017 New Revision: 300764 URL: http://llvm.org/viewvc/llvm-project?rev=300764&view=rev Log: Corrrect warn_unused_result attribute The original idea was that if the attribute on an operator, that the return-value unused-ness wouldn't matter. However,

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-26 Thread Erich Keane via cfe-commits
erichkeane updated this revision to Diff 75903. erichkeane added a comment. Corrected Decoration settings to match the soon-to-be-updated spec. https://reviews.llvm.org/D25204 Files: include/clang-c/Index.h include/clang/AST/Type.h include/clang/Basic/Attr.td include/clang/Basic/AttrDoc

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-26 Thread Erich Keane via cfe-commits
erichkeane added a comment. After much debate, the architects have agreed to change the "Decoration" section to the following. The next patch does these, so I'm ready for continued review. Thanks for your patience! -Erich __regcall Decoration Names of functions that use __regcall are decorate

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-26 Thread Erich Keane via cfe-commits
erichkeane marked 8 inline comments as done. erichkeane added a comment. New diff coming that fixes Reid & David's comments https://reviews.llvm.org/D25204 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-26 Thread Erich Keane via cfe-commits
erichkeane updated this revision to Diff 75919. https://reviews.llvm.org/D25204 Files: include/clang-c/Index.h include/clang/AST/Type.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/Specifiers.h include/clang/Basic/TokenKinds.def lib/AST/Expr.cpp

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-27 Thread Erich Keane via cfe-commits
erichkeane added a comment. I guess I'm not sure how to respond to that... Calling conventions traditionally use double underscore to prevent from stomping on user keywords. Additionally, this is in a specification that has an existing implementation available, so I'm not sure what could be do

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-27 Thread Erich Keane via cfe-commits
erichkeane added a comment. In https://reviews.llvm.org/D25204#581469, @rnk wrote: > Remember the fight over _Atomic with MSVC's STL? The fallacy of the > implementer's namespace is that there is only one implementer. > https://llvm.org/bugs/show_bug.cgi?id=19043 > > We should prefer adding `__

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-27 Thread Erich Keane via cfe-commits
erichkeane updated this revision to Diff 76117. erichkeane added a comment. Remove single-underscore version of _regcall kw. https://reviews.llvm.org/D25204 Files: include/clang-c/Index.h include/clang/AST/Type.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clan

[PATCH] D25204: Register Calling Convention, Clang changes

2016-11-01 Thread Erich Keane via cfe-commits
erichkeane added a comment. @rnk, @majnemer and @ABataev : I believe that I've done everything that has come up in review, and this passes all tests for the convention I can find. Do you guys see anything that is holding this patch up? What is otherwise the 'next step' in getting this into m

[PATCH] D25204: Register Calling Convention, Clang changes

2016-11-02 Thread Erich Keane via cfe-commits
erichkeane updated this revision to Diff 76717. erichkeane added a comment. It was brought to my attention that regcall isn't a calling convention that should cause MSVC to switch to C++ mangling. Switched that and updated the tests. https://reviews.llvm.org/D25204 Files: include/clang-c/I

r285849 - regcall: Implement regcall Calling Conv in clang

2016-11-02 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Nov 2 13:29:35 2016 New Revision: 285849 URL: http://llvm.org/viewvc/llvm-project?rev=285849&view=rev Log: regcall: Implement regcall Calling Conv in clang This patch implements the register call calling convention, which ensures as many values as possible are passed

[PATCH] D25204: Register Calling Convention, Clang changes

2016-11-02 Thread Erich Keane via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL285849: regcall: Implement regcall Calling Conv in clang (authored by erichkeane). Changed prior to commit: https://reviews.llvm.org/D25204?vs=76717&id=76755#toc Repository: rL LLVM https://reviews.

[PATCH] D23692: Interpret strlen as constexpr for GCC Compatibility

2016-08-18 Thread Erich Keane via cfe-commits
erichkeane created this revision. erichkeane added reviewers: cfe-commits, majnemer, vbyakovl, DavidKreitzer, andreybokhanko, rsmith. erichkeane set the repository for this revision to rL LLVM. GCC (and other compilers) treat strlen as a 'constexpr' function as an extension to the language. Cla

Re: [PATCH] D23692: Interpret strlen as constexpr for GCC Compatibility

2016-08-18 Thread Erich Keane via cfe-commits
erichkeane abandoned this revision. erichkeane added a comment. In https://reviews.llvm.org/D23692#520081, @rsmith wrote: > This is not a conforming extension. We are explicitly not allowed to make > standard library functions `constexpr` if the standard doesn't say they are; > see [constexpr.f

Re: [PATCH] D23692: Interpret strlen as constexpr for GCC Compatibility

2016-08-19 Thread Erich Keane via cfe-commits
erichkeane added a comment. In https://reviews.llvm.org/D23692#520097, @erichkeane wrote: > In https://reviews.llvm.org/D23692#520081, @rsmith wrote: > > > This is not a conforming extension. We are explicitly not allowed to make > > standard library functions `constexpr` if the standard doesn't

r291041 - Correct Vectorcall Register passing and HVA Behavior

2017-01-04 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Wed Jan 4 18:20:51 2017 New Revision: 291041 URL: http://llvm.org/viewvc/llvm-project?rev=291041&view=rev Log: Correct Vectorcall Register passing and HVA Behavior Front end component (back end changes are D27392). The vectorcall calling convention was broken subtly in

[PATCH] D26636: patch for llvm/clang bug 25965, suppress warning diagnostic on float-to-bool conversion when in condition context

2016-11-22 Thread Erich Keane via cfe-commits
erichkeane added a comment. I believe that this is a good patch that solves an open Bug. See : https://llvm.org/bugs/show_bug.cgi?id=25965 I think the SPEC case is much less compelling, but I think that using a float explicitly in a conditional is something I really wouldn't expect a warning o

r288869 - [MS-ABI]V-base dtor called more than needed when throw happens in v-base ctor in window. Need add "complete object flag" check in eh cleanup code.

2016-12-06 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Tue Dec 6 18:21:45 2016 New Revision: 288869 URL: http://llvm.org/viewvc/llvm-project?rev=288869&view=rev Log: [MS-ABI]V-base dtor called more than needed when throw happens in v-base ctor in window. Need add "complete object flag" check in eh cleanup code. The problem

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-03 Thread Erich Keane via cfe-commits
erichkeane created this revision. erichkeane added reviewers: oren_ben_simhon, cfe-commits. erichkeane set the repository for this revision to rL LLVM. The Register Calling Convention (RegCall) was introduced by Intel to optimize parameter transfer on function call. This calling convention ensure

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane added a comment. Hi Alexey- Can you let me know what you mean by "Full Context Review"? I'm unfamiliar with that process. The other fixes I'll look at today. Repository: rL LLVM https://reviews.llvm.org/D25204 ___ cfe-commits mailin

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane removed rL LLVM as the repository for this revision. erichkeane updated this revision to Diff 73489. https://reviews.llvm.org/D25204 Files: include/clang-c/Index.h include/clang/AST/Type.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/Specifi

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane marked 4 inline comments as done. erichkeane added a comment. Updated the code, fixed Alexey's concerns. Thanks again for the comments! https://reviews.llvm.org/D25204 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane updated this revision to Diff 73490. erichkeane added a comment. Did a full context diff, as requested. https://reviews.llvm.org/D25204 Files: include/clang-c/Index.h include/clang/AST/Type.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/Sp

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane marked 11 inline comments as done. erichkeane added a comment. New patch incoming. > ABataev wrote in ItaniumMangle.cpp:1236-1237 > What if function type is not a FunctionProtoType? Right, good catch. I looked at Mangle.cpp which does something very similar, and assumes that Funct

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane updated this revision to Diff 73507. erichkeane marked an inline comment as done. erichkeane added a comment. Herald added a subscriber: dschuff. Fixes based on Alexey/Ried's feedback https://reviews.llvm.org/D25204 Files: include/clang-c/Index.h include/clang/AST/Type.h includ

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane added inline comments. > rnk wrote in TargetInfo.cpp:3742-3743 > But, if the return value is returned directly, it doesn't conflict with the > free parameter registers. In my example, the return value can use XMM0-3 and > the parameters can use XMM0-15. Can you add this test case and

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-04 Thread Erich Keane via cfe-commits
erichkeane marked 16 inline comments as done. erichkeane added a comment. Commenting to save my comments (don't seem to survive a refresh). Still working on non-function mangling. > rnk wrote in ItaniumMangle.cpp:1203 > What mangling should happen for operator overloads and all other kinds of

[PATCH] D25204: Register Calling Convention, Clang changes

2016-10-05 Thread Erich Keane via cfe-commits
erichkeane marked 9 inline comments as done. erichkeane added inline comments. > oren_ben_simhon wrote in AttrDocs.td:1267 > You might want to use the following link instead because it is most updated: > https://software.intel.com/en-us/node/693069 This has changed 2x since I started this proje

<    1   2   3   4   5   6   7   8   9   10   >