]> granicus.if.org Git - clang/log
clang
9 years agoRemove a comment I accidentally added in r227581. No behavior change.
Nico Weber [Mon, 2 Feb 2015 04:18:38 +0000 (04:18 +0000)]
Remove a comment I accidentally added in r227581. No behavior change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227777 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoAllow objc_bridge(id) to be used on typedefs of [cv] void*.
John McCall [Sun, 1 Feb 2015 22:34:06 +0000 (22:34 +0000)]
Allow objc_bridge(id) to be used on typedefs of [cv] void*.

rdar://19678874

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227774 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add other flavors of AVX512 cmpps/cmppd intrinsics.
Craig Topper [Sun, 1 Feb 2015 22:27:40 +0000 (22:27 +0000)]
[X86] Add other flavors of AVX512 cmpps/cmppd intrinsics.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227773 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add the AVX512 exp2a23 intrinsics.
Craig Topper [Sun, 1 Feb 2015 21:34:11 +0000 (21:34 +0000)]
[X86] Add the AVX512 exp2a23 intrinsics.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227769 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRemove decltype in an attempt to fix the MSVC build.
Benjamin Kramer [Sun, 1 Feb 2015 21:32:12 +0000 (21:32 +0000)]
Remove decltype in an attempt to fix the MSVC build.

C++ is hard, attempt #1 of n.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227768 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoActually we can just inline the base typedef and use the injected class name for...
Benjamin Kramer [Sun, 1 Feb 2015 20:47:51 +0000 (20:47 +0000)]
Actually we can just inline the base typedef and use the injected class name for the base class.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227765 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoReimplement iterator wrappers on top of llvm::iterator_adaptor_base.
Benjamin Kramer [Sun, 1 Feb 2015 20:31:36 +0000 (20:31 +0000)]
Reimplement iterator wrappers on top of llvm::iterator_adaptor_base.

Eliminates a ton of boilerplate proxying the iterator methods. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227764 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add test for avx512er builtins that I forgot to commit with changes to the...
Craig Topper [Sun, 1 Feb 2015 19:56:51 +0000 (19:56 +0000)]
[X86] Add test for avx512er builtins that I forgot to commit with changes to the header file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227762 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[multiversion] Update Clang for the API change in LLVM r227731.
Chandler Carruth [Sun, 1 Feb 2015 12:26:23 +0000 (12:26 +0000)]
[multiversion] Update Clang for the API change in LLVM r227731.

This moves all of the PassManager <-> Target communication to use the
new pass manager's TargetIRAnalysis even with the old pass manager. See
the LLVM commit for some of why things are moving in this direction, but
the short version is that this will enable us to create per-function
TargetTransformInfo objects that have correct subtarget information for
that function.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227732 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add all intrinsics for scalar rsqrt28/rcp28 to avx512erintrin.h. Add parenthese...
Craig Topper [Sun, 1 Feb 2015 10:15:11 +0000 (10:15 +0000)]
[X86] Add all intrinsics for scalar rsqrt28/rcp28 to avx512erintrin.h. Add parentheses around all macro arguments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227722 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Flesh out more of the avx512erintrin.h file.
Craig Topper [Sun, 1 Feb 2015 08:52:55 +0000 (08:52 +0000)]
[X86] Flesh out more of the avx512erintrin.h file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227719 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Use macros in AVX512ER header to allow ICE to be checked for immediate argument.
Craig Topper [Sun, 1 Feb 2015 08:05:12 +0000 (08:05 +0000)]
[X86] Use macros in AVX512ER header to allow ICE to be checked for immediate argument.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227716 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Convert some more const ints to ICE in AVX512 builtins.
Craig Topper [Sun, 1 Feb 2015 07:35:43 +0000 (07:35 +0000)]
[X86] Convert some more const ints to ICE in AVX512 builtins.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227714 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Rename _mm512_valign_epi64/32 intrinsics to _mm512_alignr_epi64/32 to match...
Craig Topper [Sun, 1 Feb 2015 07:35:40 +0000 (07:35 +0000)]
[X86] Rename _mm512_valign_epi64/32 intrinsics to _mm512_alignr_epi64/32 to match Intel docs. Make immediate argument to them an ICE. Fix mask size for the alignd version.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227713 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Change rounding parameter of all the AVX512 builtins to an ICE.
Craig Topper [Sun, 1 Feb 2015 07:35:35 +0000 (07:35 +0000)]
[X86] Change rounding parameter of all the AVX512 builtins to an ICE.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227712 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix a typo
Filipe Cabecinhas [Sat, 31 Jan 2015 23:25:54 +0000 (23:25 +0000)]
Fix a typo

We're not that much into metals.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227696 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoTweak behavior due to -fexceptions, in C++ mode, imply -fcxx-exceptions
Filipe Cabecinhas [Sat, 31 Jan 2015 23:05:51 +0000 (23:05 +0000)]
Tweak behavior due to -fexceptions, in C++ mode, imply -fcxx-exceptions

Added test

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227695 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[PM] Update Clang for the new LLVM API in r227685 for managing the
Chandler Carruth [Sat, 31 Jan 2015 11:18:46 +0000 (11:18 +0000)]
[PM] Update Clang for the new LLVM API in r227685 for managing the
TargetTransformInfo, and unify the code in a single place.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227686 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Make AVX512 integer comparison builtins use unsigned types for the masks.
Craig Topper [Sat, 31 Jan 2015 08:58:36 +0000 (08:58 +0000)]
[X86] Make AVX512 integer comparison builtins use unsigned types for the masks.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227681 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] AVX512 scatter/gather builtins as taking an ICE for scale instead of just a...
Craig Topper [Sat, 31 Jan 2015 08:58:30 +0000 (08:58 +0000)]
[X86] AVX512 scatter/gather builtins as taking an ICE for scale instead of just a const int.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227680 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add immediate range checking for a couple XOP builtins.
Craig Topper [Sat, 31 Jan 2015 08:57:52 +0000 (08:57 +0000)]
[X86] Add immediate range checking for a couple XOP builtins.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227679 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoclang-format: Fix incorrect handling of leading whitespace.
Daniel Jasper [Sat, 31 Jan 2015 07:05:46 +0000 (07:05 +0000)]
clang-format: Fix incorrect handling of leading whitespace.

Added an assertion that triggered in an existing test case (without
observable differences) and fixed the code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227677 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[x86] Remove tab characters from avxintrin.h. NFC.
Craig Topper [Sat, 31 Jan 2015 06:33:59 +0000 (06:33 +0000)]
[x86] Remove tab characters from avxintrin.h. NFC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227676 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Make order consistent between 'const' and 'int' in one of the intrinsic header...
Craig Topper [Sat, 31 Jan 2015 06:31:30 +0000 (06:31 +0000)]
[X86] Make order consistent between 'const' and 'int' in one of the intrinsic header files. NFC

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227675 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add range checking to the immediate arguments of many of the SSE/AVX builtins.
Craig Topper [Sat, 31 Jan 2015 06:31:23 +0000 (06:31 +0000)]
[X86] Add range checking to the immediate arguments of many of the SSE/AVX builtins.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227674 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[modules] When we try to complete the redeclaration chain for a class template
Richard Smith [Sat, 31 Jan 2015 03:04:55 +0000 (03:04 +0000)]
[modules] When we try to complete the redeclaration chain for a class template
specialization, pull in any lazy specializations of the class template.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227668 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoDebugInfo: Fix line table for comparisons harder/better for the sake of C (& the...
David Blaikie [Sat, 31 Jan 2015 01:10:11 +0000 (01:10 +0000)]
DebugInfo: Fix line table for comparisons harder/better for the sake of C (& the GDB buildbot)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227663 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRename test file to be more accurate (& free up the file name for a more appropriate...
David Blaikie [Sat, 31 Jan 2015 01:10:09 +0000 (01:10 +0000)]
Rename test file to be more accurate (& free up the file name for a more appropriate test)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227662 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoCodeGen: create a WindowsARMTargetCodeGenInfo
Saleem Abdulrasool [Fri, 30 Jan 2015 23:29:19 +0000 (23:29 +0000)]
CodeGen: create a WindowsARMTargetCodeGenInfo

Create a new TargetCodeGenInfo for Windows on ARM to permit annotating the
functions with stack-probe-size (for /Gs and -mstack-probe-support) for
generating the stack probe necessary for Windows targets.  This will be used by
the backend when lowering the frame to generate the stack probe appropriately.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227641 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoSEH: Don't jump to an unreachable continuation block
Reid Kleckner [Fri, 30 Jan 2015 22:16:45 +0000 (22:16 +0000)]
SEH: Don't jump to an unreachable continuation block

If both the __try and __except blocks do not return, we want to delete
the continuation block as unreachable instead.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227627 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoWindows: Fix _CPPUNWIND definition to follow -fcxx-exceptions
Reid Kleckner [Fri, 30 Jan 2015 21:42:55 +0000 (21:42 +0000)]
Windows: Fix _CPPUNWIND definition to follow -fcxx-exceptions

This is consistent with how we interpret the MSVC /EH flag, which
controls -fcxx-exceptions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227616 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoSpecial-case the PS4 SDK for a clang test
Filipe Cabecinhas [Fri, 30 Jan 2015 18:25:59 +0000 (18:25 +0000)]
Special-case the PS4 SDK for a clang test

Original patch by Gao Yunzhong!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227593 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoShuffle tests around to more appropriate files
Filipe Cabecinhas [Fri, 30 Jan 2015 18:25:48 +0000 (18:25 +0000)]
Shuffle tests around to more appropriate files

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227592 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix regression in r227409 where we were passing -fsyntax-only
Eric Christopher [Fri, 30 Jan 2015 18:22:23 +0000 (18:22 +0000)]
Fix regression in r227409 where we were passing -fsyntax-only
in all cases.

Patch by Artem Belevich.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227591 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[mips] Pass ABI name via -target-abi instead of target-features
Daniel Sanders [Fri, 30 Jan 2015 17:35:23 +0000 (17:35 +0000)]
[mips] Pass ABI name via -target-abi instead of target-features

Patch by Vladimir Medic

Reviewers: echristo, atanasyan, dsanders

Reviewed By: atanasyan, dsanders

Subscribers: llvm-commits, echristo, atanasyan

Differential Revision: http://reviews.llvm.org/D6091

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227583 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFollow-up to r217302 and r227555: Don't crash on inline ~A::A() if A is an int.
Nico Weber [Fri, 30 Jan 2015 16:53:11 +0000 (16:53 +0000)]
Follow-up to r217302 and r227555: Don't crash on inline ~A::A() if A is an int.

Even with r227555, this still crashed:

  struct S {
    int A;
    ~A::A() {}
  };

That's because ParseOptionalCXXScopeSpecifier()'s call to
ActOnCXXNestedNameSpecifier() doesn't mark the scope spec as invalid if sema
thought it's a good idea to fixit-correct "::" to ":".  For the diagnostic
improvement done in r217302, we never want :: to be interpreted as :, so fix
this by setting ColonSacred to false temporarily.

Found by SLi's bot.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227581 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoCode cleanup
Nathan Sidwell [Fri, 30 Jan 2015 14:21:35 +0000 (14:21 +0000)]
Code cleanup
Parser::ParseLexedMethodDeclaration: Use local var for Param
Sema::MergeCXXFunctionDecls: Use hasInheritedDefaultArg

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227577 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRemove unneeded code
Filipe Cabecinhas [Fri, 30 Jan 2015 11:17:56 +0000 (11:17 +0000)]
Remove unneeded code

We don't really care about enabling RTTI with -fexceptions, only with
-fcxx-exceptions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227567 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix OpenCL 1.2 double as an optional core feature behaviour
Fraser Cormack [Fri, 30 Jan 2015 10:51:46 +0000 (10:51 +0000)]
Fix OpenCL 1.2 double as an optional core feature behaviour

In OpenCL 1.2, using double no longer requires using the pragma cl_khr_fp64,
instead a kernel is allowed to use double, but must first have queried
clGetDeviceInfo's CL_DEVICE_DOUBLE_FP_CONFIG.

Page 197, section 6.1.1 of the OpenCL 1.2 specification has a footnote 23
describing this behaviour.

I've also added test cases such that the pragma must be used if targeting
OpenCL 1.0 or 1.1, but is ignored in 1.2 and 2.0.

Patch by Neil Henning!

Reviewers: Pekka Jääskeläinen

Differential Revision: http://reviews.llvm.org/D7245

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227565 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoSema: Disable template instantiation once a fatal error is raised
David Majnemer [Fri, 30 Jan 2015 05:01:23 +0000 (05:01 +0000)]
Sema: Disable template instantiation once a fatal error is raised

Fatal errors disable all further diagnostics.  Continuing to permit
template instantiation does nothing but make it take longer for clang to
finish with the TU.

Instead, halt all further instantiation.

Fixed in PR22396.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227556 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFollow-up to r217302: Don't crash on ~A::A() if A is undeclared.
Nico Weber [Fri, 30 Jan 2015 04:05:15 +0000 (04:05 +0000)]
Follow-up to r217302: Don't crash on ~A::A() if A is undeclared.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227555 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoTypo fixo.
Nico Weber [Fri, 30 Jan 2015 03:47:03 +0000 (03:47 +0000)]
Typo fixo.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227554 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoWrap to 80 cols by removing trailing whitespace. No behavior change.
Nico Weber [Fri, 30 Jan 2015 02:35:21 +0000 (02:35 +0000)]
Wrap to 80 cols by removing trailing whitespace. No behavior change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227553 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoTeach AST printing to not print whitespace inside {} and () for initialization,
Richard Smith [Fri, 30 Jan 2015 02:04:26 +0000 (02:04 +0000)]
Teach AST printing to not print whitespace inside {} and () for initialization,
to match LLVM's preferred style.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227545 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoWeaken an assertion that isn't true for invalid input.
Nico Weber [Fri, 30 Jan 2015 01:48:49 +0000 (01:48 +0000)]
Weaken an assertion that isn't true for invalid input.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227540 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoclang-cl: Enable -fexceptions but not -fcxx-exceptions by default
Reid Kleckner [Fri, 30 Jan 2015 01:04:16 +0000 (01:04 +0000)]
clang-cl: Enable -fexceptions but not -fcxx-exceptions by default

This enables proper IRgen of SEH constructs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227528 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoAdd some more PS4 driver settings related to rtti and exceptions.
Filipe Cabecinhas [Thu, 29 Jan 2015 23:56:43 +0000 (23:56 +0000)]
Add some more PS4 driver settings related to rtti and exceptions.

Summary:
The PS4 defaults to -fno-rtti, and has to have rtti enabled when enabling
exceptions.

This commit makes clang add the -fno-rtti by default on the PS4, unless
-frtti was passed in.

It also diagnoses misuses for the PS4:
- Exceptions need rtti. Warn and enable rtti if no rtti flag was passed,
  error if -fno-rtti was passed.

I also added a more general warning for when -fno-rtti is the default
(currently it's only on the PS4) and the vptr sanitizer is on.

Fixed a few tests, due to different flag order when passing cc1 arguments.

Reviewers: chandlerc

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D7250

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227518 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[PowerPC] Work around TLS linker bug
Ulrich Weigand [Thu, 29 Jan 2015 19:08:51 +0000 (19:08 +0000)]
[PowerPC] Work around TLS linker bug

Work around a bug in GNU ld (and gold) linker versions up to 2.25
that may mis-optimize code generated by this version of clang/LLVM
to access general-dynamic or local-dynamic TLS variables.

Bug is fixed here:
https://sourceware.org/ml/binutils/2015-01/msg00318.html

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227480 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoThis reverts commit r227432, r227438 and r227448.
Rafael Espindola [Thu, 29 Jan 2015 17:22:53 +0000 (17:22 +0000)]
This reverts commit r227432, r227438 and r227448.

It should bring the bots back.

Original messagses:

r227448:
   Remove unnecessary default.

r227438:
   Fix Index/print-type.cpp test following r227432.

r227432:
    libclang: Add three functions useful for dealing with anonymous fields:
       clang_Cursor_getOffsetOfField
       clang_Cursor_isAnonymous
       clang_Type_visitFields
    Python: Add corresponding methods for dealing with anonymous fields.

    Patch by Loïc Jaquemet

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227472 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoReverting r227453, which adds back the fuzzer library. Now excluding the clang-format...
Aaron Ballman [Thu, 29 Jan 2015 16:58:53 +0000 (16:58 +0000)]
Reverting r227453, which adds back the fuzzer library. Now excluding the clang-format fuzzer functionality based on LLVM_USE_SANITIZE_COVERAGE being set or unset.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227465 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoTemporarily reverting the fuzzer library as it causes too many build issues for MSVC...
Aaron Ballman [Thu, 29 Jan 2015 15:49:46 +0000 (15:49 +0000)]
Temporarily reverting the fuzzer library as it causes too many build issues for MSVC users. This reverts: 227354

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227453 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRemove unnecessary default.
Francois Pichet [Thu, 29 Jan 2015 15:42:56 +0000 (15:42 +0000)]
Remove unnecessary default.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227448 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[xcore] Make the exceptions test actually check for the absence of -fexceptions in...
Filipe Cabecinhas [Thu, 29 Jan 2015 15:03:36 +0000 (15:03 +0000)]
[xcore] Make the exceptions test actually check for the absence of -fexceptions in the proper place

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227443 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix Index/print-type.cpp test following r227432.
Francois Pichet [Thu, 29 Jan 2015 13:33:44 +0000 (13:33 +0000)]
Fix Index/print-type.cpp test following r227432.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227438 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoDisable a couple of crash-* tests for now. It seems they might be incompatible to...
NAKAMURA Takumi [Thu, 29 Jan 2015 13:23:23 +0000 (13:23 +0000)]
Disable a couple of crash-* tests for now. It seems they might be incompatible to win32.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227434 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoclang-format: FIXME that led to access of uninitialized memory.
Daniel Jasper [Thu, 29 Jan 2015 13:11:47 +0000 (13:11 +0000)]
clang-format: FIXME that led to access of uninitialized memory.

I have so far not succeeded in finding a nicely reduced test case or an
observable difference which could help me create a test failure without
msan.

Committing without test to unblock kcc's further fuzzing progress.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227433 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agolibclang: Add three functions useful for dealing with anonymous fields:
Francois Pichet [Thu, 29 Jan 2015 12:45:29 +0000 (12:45 +0000)]
libclang: Add three functions useful for dealing with anonymous fields:
   clang_Cursor_getOffsetOfField
   clang_Cursor_isAnonymous
   clang_Type_visitFields
Python: Add corresponding methods for dealing with anonymous fields.

Patch by Loïc Jaquemet

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227432 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoclang-format: Fix crasher caused by not properly setting dry-run.
Daniel Jasper [Thu, 29 Jan 2015 10:47:14 +0000 (10:47 +0000)]
clang-format: Fix crasher caused by not properly setting dry-run.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227427 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoMS ABI: Implement proper support for setjmp
David Majnemer [Thu, 29 Jan 2015 09:29:21 +0000 (09:29 +0000)]
MS ABI: Implement proper support for setjmp

On targets which use the MSVCRT, setjmp is a macro which expands to
_setjmp or _setjmpex.

_setjmp and _setjmpex have a secret, hidden argument which is not listed
in the function prototype on X64 and WoA.  This hidden argument always
seems to be the frame pointer.

_setjmpex isn't used on X86, _setjmp is magically replaced with a call
to _setjmp3.  The second argument is zero for 'normal' setjmp/longjmp
pairs, otherwise it is a count of additional variadic arguments.  This
is used when setjmp appears inside of a try or __try.

It is not safe to use a pointer to setjmp because _setjmp, _setjmpex and
_setmp3 are not compatible with setjmp.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227426 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoBasic: Re-sort these builtins
David Majnemer [Thu, 29 Jan 2015 09:29:17 +0000 (09:29 +0000)]
Basic: Re-sort these builtins

No functional change, it just makes it a little easier to find what you
are looking for.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227425 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoMake a codegen warning a real warning instead of a getCustomDiagID().
Nico Weber [Thu, 29 Jan 2015 06:25:59 +0000 (06:25 +0000)]
Make a codegen warning a real warning instead of a getCustomDiagID().

Warnings shouldn't use getCustomDiagID(), since then they can't be disabled
via a flag, can't be remapped, etc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227420 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoSema: Turn some applicable functions static. NBC.
Francisco Lopes da Silva [Thu, 29 Jan 2015 05:54:59 +0000 (05:54 +0000)]
Sema: Turn some applicable functions static. NBC.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227418 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoDon't use BCPL comments here, in case someone wants to use <stdatomic.h> from C89...
Richard Smith [Thu, 29 Jan 2015 03:34:39 +0000 (03:34 +0000)]
Don't use BCPL comments here, in case someone wants to use <stdatomic.h> from C89 mode.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227417 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoEnsure that -fsyntax-only with fortran 90 passes along silently
Eric Christopher [Thu, 29 Jan 2015 00:56:17 +0000 (00:56 +0000)]
Ensure that -fsyntax-only with fortran 90 passes along silently
to the underlying gcc.
PR22234

Patch by Artem Belevich.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227409 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRemove NaClX86_64TargetCodeGenInfo and NaClARMTargetCodeGenInfo
Derek Schuff [Thu, 29 Jan 2015 00:47:04 +0000 (00:47 +0000)]
Remove NaClX86_64TargetCodeGenInfo and NaClARMTargetCodeGenInfo

Summary:
They just existed before to use NaCl's custom ABIInfos; now that those are gone,
the custom TargetCodeGenInfos are no longer needed either.

Test Plan: don't break the existing tests

Reviewers: jvoung

Subscribers: jfb, cfe-commits

Differential Revision: http://reviews.llvm.org/D7234

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227406 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFor the --be8 flag, check explicitly for pre-v7 / pre-v6m cores.
Joerg Sonnenberger [Wed, 28 Jan 2015 23:30:39 +0000 (23:30 +0000)]
For the --be8 flag, check explicitly for pre-v7 / pre-v6m cores.
Those used the old Big Endian support on ARM and don't need flags.
Refactor the logic in a separate common function, which also looks at
-march. Add corresponding logic for the Linux toolchain.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227393 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[clang] Use -android environment for all compiler-rt libs.
Dan Albert [Wed, 28 Jan 2015 23:23:36 +0000 (23:23 +0000)]
[clang] Use -android environment for all compiler-rt libs.

Summary:
This was already done for the sanitizers, but it needs to be done for
the profile and builtin libs as well.

Reviewers: srhines, timmurray, eugenis, samsonov

Reviewed By: samsonov

Subscribers: compnerd, cfe-commits

Differential Revision: http://reviews.llvm.org/D7187

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227392 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoCXX [qoi]. Prevent a crash when initializer expression is
Fariborz Jahanian [Wed, 28 Jan 2015 22:08:10 +0000 (22:08 +0000)]
CXX [qoi]. Prevent a crash when initializer expression is
invalid when trying to create temporary copy of the invalid
initializer. rdar://19109967

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227378 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoPR22367: Don't forget to create a CXXFunctionalCastExpr around
Richard Smith [Wed, 28 Jan 2015 22:06:01 +0000 (22:06 +0000)]
PR22367: Don't forget to create a CXXFunctionalCastExpr around
list-initialization that gets converted to some form other than an
InitListExpr. CXXTemporaryObjectExpr is a special case here, because it
represents a fused CXXFunctionalCastExpr + CXXConstructExpr. That, in
itself, is probably a design error...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227377 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoPR 17456
Nathan Sidwell [Wed, 28 Jan 2015 21:31:26 +0000 (21:31 +0000)]
PR 17456
More helpful diagnostic on casts between unrelated class hierarchies.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227371 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRevert a change from r222797 that is no longer needed and can cause
Kaelyn Takata [Wed, 28 Jan 2015 21:10:46 +0000 (21:10 +0000)]
Revert a change from r222797 that is no longer needed and can cause
infinite recursion.

Also guard against said infinite recursion by adding an assert that will
trigger if CorrectDelayedTyposInExpr is called before a previous call to
CorrectDelayedTyposInExpr returns (i.e. if the TreeTransform run by
CorrectDelayedTyposInExpr calls a sequence of methods that
end up calling CorrectDelayedTyposInExpr, as the new test case had done
prior to this commit). Fixes PR22292.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227368 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRemove support for pnaclcall attribute
Derek Schuff [Wed, 28 Jan 2015 20:24:52 +0000 (20:24 +0000)]
Remove support for pnaclcall attribute

Summary:
It was used for interoperability with PNaCl's calling conventions, but
it's no longer needed.

Also Remove NaCl*ABIInfo which just existed to delegate to either the portable
or native ABIInfo, and remove checkCallingConvention which was now a no-op
override.

Reviewers: jvoung

Subscribers: jfb, llvm-commits

Differential Revision: http://reviews.llvm.org/D7206

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227362 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix layering violation: include/clang/Basic/PlistSupport.h should not include
Richard Smith [Wed, 28 Jan 2015 20:14:54 +0000 (20:14 +0000)]
Fix layering violation: include/clang/Basic/PlistSupport.h should not include
files from include/clang/Lex. Clean up module map.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227361 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoDebugInfo: Attribute implicit boolean tests to the expression being tested, not to...
David Blaikie [Wed, 28 Jan 2015 19:50:09 +0000 (19:50 +0000)]
DebugInfo: Attribute implicit boolean tests to the expression being tested, not to the outer use of that expression.

This is half a fix for a GDB test suite failure that expects to start at
'a' in the following code:

  void func(int a)
    if (a
        &&
b)
...

But instead, without this change, the comparison was assigned to '&&'
(well, worse actually - because there was a chained 'a && b && c' and it
was assigned to the second '&&' because of a recursive application of
this bug) and then the load folded into the comparison so breaking on
the function started at '&&' instead of 'a'.

The other part of this needs to be fixed in LLVM where it's ignoring the
location of the icmp and instead using the location of the branch
instruction.

The fix to the conditional operator is actually a no-op currently,
because the conditional operator's location coincides with 'a' (the
start of the conditional expression) but should probably be '?' instead.
See the FIXME in the test case that mentions the ARCMigration tool
failures when I tried to make that change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227356 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoAdd clang-format-fuzzer target
Kostya Serebryany [Wed, 28 Jan 2015 19:39:18 +0000 (19:39 +0000)]
Add clang-format-fuzzer target

Summary:
This adds clang-format-fuzzer binary,
which depends on the Fuzzer lib,
see http://reviews.llvm.org/D7184

This fuzer has found ~15 bugs so far, and I hope to set up a bot for it.

Test Plan: run on a bot.

Reviewers: samsonov, djasper

Reviewed By: djasper

Subscribers: curdeius, cfe-commits

Differential Revision: http://reviews.llvm.org/D7202

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227354 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoTestcase for PS4 target defaults (from r227215 and r227219)
Filipe Cabecinhas [Wed, 28 Jan 2015 18:49:45 +0000 (18:49 +0000)]
Testcase for PS4 target defaults (from r227215 and r227219)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227343 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoEnable pragma comment processing for PS4. Original patch by Yunzhong Gao!
Alex Rosenberg [Wed, 28 Jan 2015 18:26:15 +0000 (18:26 +0000)]
Enable pragma comment processing for PS4. Original patch by Yunzhong Gao!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227336 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoR600: Use a Southern Islands GPU as the default for the amdgcn target
Tom Stellard [Wed, 28 Jan 2015 15:38:44 +0000 (15:38 +0000)]
R600: Use a Southern Islands GPU as the default for the amdgcn target

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227315 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix typo (count correctly) in include/clang/AST/TypeNodes.def
Hal Finkel [Wed, 28 Jan 2015 15:11:18 +0000 (15:11 +0000)]
Fix typo (count correctly) in include/clang/AST/TypeNodes.def

Patch by Mingjie Xing.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227313 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoPR 20146
Nathan Sidwell [Wed, 28 Jan 2015 14:48:39 +0000 (14:48 +0000)]
PR  20146
make new diagnostic an ExtWarn

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227312 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoAvoid testing for a particular choice of resource dir.
Sean Silva [Wed, 28 Jan 2015 14:19:08 +0000 (14:19 +0000)]
Avoid testing for a particular choice of resource dir.

Without this patch, this test was accidentally testing that
CLANG_RESOURCE_DIR, CLANG_LIBDIR_SUFFIX, and CLANG_VERSION_STRING
were set to a particular set of values.

The test was also getting pretty hairy since it was attempting to craft
a regular expression that covered "all" possible combinations of
settings for these configure-time constants.

Clean it up by directly capturing the resource directory in a FileCheck
variable.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227310 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoImproves overload completion result chunks.
Francisco Lopes da Silva [Wed, 28 Jan 2015 14:17:22 +0000 (14:17 +0000)]
Improves overload completion result chunks.

The code building the code completion string for overloads was providing
less detail compared to the one building completion strings for function
declarations. There was no information about optionals and no information
about what's a parameter and what's a function identifier, everything
besides ResultType, CurrentParameter and special characters was classified
as Text.

This makes code completion strings for overload candidates to follow a
pattern very similar, but not identical, to the one in use for function
declarations:

 - return type chunk: ResultType
 - function identifier chunk: Text
 - parameter chunks: Placeholder
 - optional parameter chunks: Optional
 - current parameter chunk: CurrentParameter

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227309 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoSema: Ensure that __c11_atomic_fetch_add has a pointer to complete type
David Majnemer [Wed, 28 Jan 2015 05:48:06 +0000 (05:48 +0000)]
Sema: Ensure that __c11_atomic_fetch_add has a pointer to complete type

Pointer arithmetic is only makes sense if the pointee type is complete.

This fixes PR22361.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227295 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoRe-arrange DR test cases, and update DR status page.
Larisse Voufo [Wed, 28 Jan 2015 01:01:21 +0000 (01:01 +0000)]
Re-arrange DR test cases, and update DR status page.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227279 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoUse the real CXXScopeSpec when setting the correction SourceRange.
Kaelyn Takata [Wed, 28 Jan 2015 00:46:09 +0000 (00:46 +0000)]
Use the real CXXScopeSpec when setting the correction SourceRange.

Otherwise, in the most important case and the only case where SS and
TempSS are different (which is when the CXXScopeSpec should be dropped,
and TempSS is NULL) the wrong SourceRange will be used in the fixit for
the typo correction. Fixes the remaining issue in PR20626.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227278 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoIntrin.h: define _XCR_XFEATURE_ENABLED_MASK
Hans Wennborg [Tue, 27 Jan 2015 23:34:35 +0000 (23:34 +0000)]
Intrin.h: define _XCR_XFEATURE_ENABLED_MASK

Users expect to be able to use this with _xgetbv.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227270 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoCleanups, and add some FIXMEs. No functional change.
Richard Smith [Tue, 27 Jan 2015 23:23:39 +0000 (23:23 +0000)]
Cleanups, and add some FIXMEs. No functional change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227267 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix a think-o in handling ambiguous corrections for a TypoExpr.
Kaelyn Takata [Tue, 27 Jan 2015 22:01:39 +0000 (22:01 +0000)]
Fix a think-o in handling ambiguous corrections for a TypoExpr.

Under certain circumstances, the identifier mentioned in the diagnostic
won't match the intended correction even though the replacement
expression and the note pointing to the decl are both correct.
Basically, the TreeTransform assumes the TypoExpr's Consumer points to
the correct TypoCorrection, but the handling of typos that appear to be
ambiguous from the point of view of TransformTypoExpr would cause that
assumption to be violated by altering the Consumer's correction stream.
This fix allows the Consumer's correction stream to be reset to the
right TypoCorrection after successfully resolving the percieved ambiguity.

Included is a fix to suppress correcting the RHS of an assignment to the
LHS of that assignment for non-C++ code, to prevent a regression in
test/SemaObjC/provisional-ivar-lookup.m.

This fixes PR22297.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227251 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoImplement the remaining portion of DR1467 from r227022. I may have overlooked a few...
Larisse Voufo [Tue, 27 Jan 2015 18:47:05 +0000 (18:47 +0000)]
Implement the remaining portion of DR1467 from r227022. I may have overlooked a few things, but this implementation comes straight from the DR resolution itself.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227224 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoCheck wchar_t type on PS4.
Alex Rosenberg [Tue, 27 Jan 2015 18:43:05 +0000 (18:43 +0000)]
Check wchar_t type on PS4.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227223 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoUpdate the doxygen comments in CGDebugInfo.h to follow the coding standards.
Adrian Prantl [Tue, 27 Jan 2015 18:32:19 +0000 (18:32 +0000)]
Update the doxygen comments in CGDebugInfo.h to follow the coding standards.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227221 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoProperly handle typos in the conditional of ?: expressions in C.
Kaelyn Takata [Tue, 27 Jan 2015 18:26:18 +0000 (18:26 +0000)]
Properly handle typos in the conditional of ?: expressions in C.

In particular, remove the OpaqueExpr transformation from r225389 and
move the correction of the conditional from CheckConditionalOperands to
ActOnConditionalOp before the OpaqueExpr is created. This fixes the
typo correction behavior in C code that uses the GNU extension for a
binary ?: (without an expression between the "?" and the ":").

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227220 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoFix part of r227215. PS4 code just omits leaf frame pointers.
Filipe Cabecinhas [Tue, 27 Jan 2015 18:08:32 +0000 (18:08 +0000)]
Fix part of r227215. PS4 code just omits leaf frame pointers.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227219 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoAdded more PS4 defaults for code generation
Filipe Cabecinhas [Tue, 27 Jan 2015 17:27:37 +0000 (17:27 +0000)]
Added more PS4 defaults for code generation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227215 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoNo longer SCE_PRIVATE ;)
Sean Silva [Tue, 27 Jan 2015 16:53:56 +0000 (16:53 +0000)]
No longer SCE_PRIVATE ;)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227200 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoBegin to teach clang about the PS4.
Alex Rosenberg [Tue, 27 Jan 2015 14:47:44 +0000 (14:47 +0000)]
Begin to teach clang about the PS4.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227194 91177308-0d34-0410-b5e6-96231b3b80d8

9 years ago[X86] Add intrinsics for AVX512 128 and 256 bit integer comparison of word and byte...
Craig Topper [Tue, 27 Jan 2015 09:16:29 +0000 (09:16 +0000)]
[X86] Add intrinsics for AVX512 128 and 256 bit integer comparison of word and byte vectors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227186 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoDR1902: if overload resolution recurses, and the inner overload resolution
Richard Smith [Tue, 27 Jan 2015 03:30:40 +0000 (03:30 +0000)]
DR1902: if overload resolution recurses, and the inner overload resolution
selects a deleted function, the outer function is still a candidate even though
the initialization sequence is "otherwise ill-formed".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227169 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoDon't generate llvm.expect intrinsics with -O0.
Pete Cooper [Mon, 26 Jan 2015 20:51:58 +0000 (20:51 +0000)]
Don't generate llvm.expect intrinsics with -O0.

The backend won't run LowerExpect on -O0.  In a debug LTO build, this results in llvm.expect intrinsics being in the LTO IR which doesn't know how to optimize them.

Thanks to Chandler for the suggestion and review.

Differential revision: http://reviews.llvm.org/D7183

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227135 91177308-0d34-0410-b5e6-96231b3b80d8

9 years agoTweak r227115 per review feedback
Ben Langmuir [Mon, 26 Jan 2015 20:01:17 +0000 (20:01 +0000)]
Tweak r227115 per review feedback

Use getAsArrayTypeUnsafe() instead of getUnqualifiedDesugaredType() to
get the underlying ArrayType.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@227129 91177308-0d34-0410-b5e6-96231b3b80d8