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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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.
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
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
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
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
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
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
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
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()
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
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
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
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
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
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-
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
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
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
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
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
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
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
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
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)
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
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
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
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-
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/
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
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
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
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
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
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
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
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:
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
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
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
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
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
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
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
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
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
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:
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
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
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,
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
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
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
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
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
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 `__
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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
201 - 300 of 1282 matches
Mail list logo