[PATCH] D29032: [mips] Define macros related to -mabicalls in the preprocessor

2017-01-23 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Historically, NetBSD, FreeBSD and OpenBSD have defined the macro ABICALLS in the preprocessor when -mabicalls is in effect. Mainline GCC later defined __mips_abicalls when -mabicalls is in effect. This patch teaches the preprocessor to define these macros when

[PATCH] D29032: [mips] Define macros related to -mabicalls in the preprocessor

2017-01-23 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Sending it to the correct list this time. https://reviews.llvm.org/D29032 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D29031: [mips] Add support for static model on N64

2017-01-23 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. The patch teaches the Clang driver how to handle the N64 static relocation model properly. It enforces the correct target feature (+noabicalls) when -fno-pic is used. This is required as non-pic N64 code as the abi extension to call PIC code (CPIC) is unsupported.

[PATCH] D29031: [mips] Add support for static model on N64

2017-01-24 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. @slthakur can you take a look at this too? Thanks, Simon Repository: rL LLVM https://reviews.llvm.org/D29031 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D29032: [mips] Define macros related to -mabicalls in the preprocessor

2017-01-24 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. @joerg , @emaste : My concern is that the stock gcc distributions for FreeBSD, NetBSD from your sources doesn't define __mips_abicalls, so I'm worried about potential incompatibilities. Comment at: test/Preprocessor/init.c:4533 +//

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-01-27 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Ping. https://reviews.llvm.org/D25866 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D29031: [mips] Add support for static model on N64

2017-01-27 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL293285: [mips] Add support for static model on N64 (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D29031?vs=85388=86047#toc Repository: rL LLVM

[PATCH] D29032: [mips] Define macros related to -mabicalls in the preprocessor

2017-02-21 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL295728: [mips] Define macros related to -mabicalls in the preprocessor (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D29032?vs=85392=89219#toc Repository: rL LLVM

[PATCH] D29032: [mips] Define macros related to -mabicalls in the preprocessor

2017-02-15 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. @joerg ping? https://reviews.llvm.org/D29032 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D29032: [mips] Define macros related to -mabicalls in the preprocessor

2017-02-15 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Ok, I'll have `__mips_abicalls` unconditionally defined for everyone, The other two BSD's will have the traditional macro defined as well. https://reviews.llvm.org/D29032 ___ cfe-commits mailing list

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2016-12-16 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 81755. sdardis marked an inline comment as done. sdardis added a comment. Addressed review comments, fixed assertion issue with expressions like scalar -= vector. https://reviews.llvm.org/D25866 Files: include/clang/Basic/DiagnosticSemaKinds.td

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2016-12-16 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: lib/Sema/SemaExpr.cpp:8051 + if (!LHSVecType) { +assert(RHSVecType && "RHSVecType is not a vector!"); if (!tryVectorConvertAndSplat(*this, (IsCompAssign ? nullptr : ), bruno wrote: > `tryVectorConvertAndSplat`

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-01-05 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Ping. https://reviews.llvm.org/D25866 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D31082: [mips][msa] Range adjustment for ldi_b builtin function operand

2017-03-20 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. Can you add a test to test/CodeGen/builtins-mips-msa.c covering the new extended range for ldi.b ? LGTM. https://reviews.llvm.org/D31082 ___

[PATCH] D30465: [mips] Set the Int64Type / IntMaxType types correctly for OpenBSD/mips64

2017-04-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Do you need me to commit this for you? Repository: rL LLVM https://reviews.llvm.org/D30465 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D31667: [Sema] Extend GetSignedVectorType to deal with non ExtVector types

2017-04-04 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. This improves some error messages which would otherwise refer to ext_vector_type types in contexts where there are no such types. Factored out from https://reviews.llvm.org/D25866 at reviewer's request. https://reviews.llvm.org/D31667 Files:

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-04-04 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 94070. sdardis added a comment. Factored out the changes from https://reviews.llvm.org/D31337. https://reviews.llvm.org/D25866 Files: include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/Sema/SemaExpr.cpp test/Sema/vector-cast.c

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-04-06 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 94434. sdardis marked 7 inline comments as done. sdardis added a comment. Addressed review comments. I've changed InvalidVectorOperands() to not use InvalidOperands() after updating some tests. InvalidOperands() was receiving expressions with implicit

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-04-05 Thread Simon Dardis via Phabricator via cfe-commits
sdardis marked an inline comment as done. sdardis added a comment. Thanks for sticking with this. I've held off updating the diff until https://reviews.llvm.org/D31667 (not https://reviews.llvm.org/D31337 as previously posted) is finished. Responses inlined. Comment at:

[PATCH] D31667: [Sema] Extend GetSignedVectorType to deal with non ExtVector types

2017-04-06 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL299641: [Sema] Extend GetSignedVectorType to deal with non ExtVector types (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D31667?vs=94205=94344#toc Repository: rL LLVM

[PATCH] D31667: [Sema] Extend GetSignedVectorType to deal with non ExtVector types

2017-04-06 Thread Simon Dardis via Phabricator via cfe-commits
sdardis marked an inline comment as done. sdardis added inline comments. Comment at: lib/Sema/SemaExpr.cpp:9736 + } + + if (TypeSize == Context.getTypeSize(Context.LongLongTy)) ahatanak wrote: > This isn't particularly urgent, but can we use ASTContext >

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-04-13 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 95109. sdardis marked 2 inline comments as done. sdardis added a comment. Addressed review comments. I've highlighted the relevant places with FIXME:s where we don't support GCC vector operations. https://reviews.llvm.org/D25866 Files:

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-04-18 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Realised I've some comments to submit. Comment at: lib/Sema/SemaExpr.cpp:8032 + + return InvalidOperands(Loc, LHS, RHS); +} bruno wrote: > Double checking here: are there tests for the `InvalidOperands` case above? Yes, this case is

[PATCH] D30465: [mips] Set the Int64Type / IntMaxType types correctly for OpenBSD/mips64

2017-04-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. FYI, you should close this revision manually and cite the commit (https://reviews.llvm.org/rL297098). Also please cite the review and all the reviewers when you commit. E.g. the commit message for that should be: [mips] Set the Int64Type / IntMaxType types correctly

[PATCH] D30693: [mips][msa] Remove range checks for non-immediate sld.[bhwd] instructions

2017-03-09 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM. Minor nit: there's some spurious whitespace that can be removed, see my inlined comment. Comment at: test/CodeGen/builtins-mips-msa.c:701 v2i64_r =

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-03-14 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 91716. sdardis added a comment. Addressed review comments, add C++ specific test. https://reviews.llvm.org/D25866 Files: include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/Sema/SemaExpr.cpp test/Sema/vector-cast.c

[PATCH] D30465: [mips] Set the Int64Type / IntMaxType types correctly for OpenBSD/mips64

2017-03-06 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. This wasn't trapped by my filters when it was first posted - sorry about that. In future if it's a mips related patch you can add me directly as a reviewer when posting the patch. Changing

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-03-07 Thread Simon Dardis via Phabricator via cfe-commits
sdardis marked 3 inline comments as done. sdardis added a comment. Thanks for getting back to this. I've traced the appearance of the ext_vector type to a piece of code that only produces ext-vector types for comparisons. I'm presuming that's wrong when clang is producing vectors implicitly in

[PATCH] D29117: SPARC: allow usage of floating-point registers in inline ASM

2017-03-07 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. > How do I create full-context-patches? Does this mean just more context lines? > Like 500 or 1000 lines? http://llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface https://reviews.llvm.org/D29117 ___

[PATCH] D31667: [Sema] Extend GetSignedVectorType to deal with non ExtVector types

2017-04-05 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 94205. sdardis marked 5 inline comments as done. sdardis added a comment. Addressed review comments, added more tests. https://reviews.llvm.org/D31667 Files: lib/Sema/SemaExpr.cpp test/Sema/vector-ops.c Index: test/Sema/vector-ops.c

[PATCH] D36208: [mips] Enable target-specific attributes for MIPS64

2017-08-02 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Some comments: Currently there is no support in the backend for the interrupt attribute for mips64 / using N32 & N64 abis, it will give a fatal error. Previously the backend lacked support for the static relocation model which is an expected requirement for interrupt

[PATCH] D36208: [mips] Enable target-specific attributes for MIPS64

2017-08-02 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. I think for the interrupt attribute, it should be an error. Currently it's an implementation detail that it errors out in the backend but in principal it can be supported (I haven't gotten around to addressing it.) For the micromips attribute, I believe it should be an

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Thanks for the reviews of all of these options. Repository: rL LLVM https://reviews.llvm.org/D35917 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL309940: [mips] Implement -muninit-const-in-rodata (authored by sdardis). Repository: rL LLVM https://reviews.llvm.org/D35917 Files: cfe/trunk/include/clang/Driver/Options.td

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. https://reviews.llvm.org/rL309978 for the revert. Repository: rL LLVM https://reviews.llvm.org/D35917 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. It's required for feature parity with GCC. -fno-common will place globals into the bss section which uses memory at runtime. The -membedded-data and -muninit-const-in-rodata options are for reducing RAM usage in some embedded environments. Repository: rL LLVM

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: cfe/trunk/lib/CodeGen/TargetInfo.cpp: + GVar->setLinkage(llvm::GlobalValue::ExternalLinkage); + GVar->setSection("rodata"); +} efriedma wrote: > Also, this change is clearly unacceptable;

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. In https://reviews.llvm.org/D35917#830898, @joerg wrote: > I don't see any reason why zero-initialised constants should be emitted in > BSS. I know that GCC does that and I just fixed bugs in that because created > wrong section flags for it. So yes, I'd prefer to

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 109545. sdardis marked an inline comment as done. sdardis added a comment. Address review comment. https://reviews.llvm.org/D35917 Files: include/clang/Driver/Options.td include/clang/Frontend/CodeGenOptions.def lib/CodeGen/TargetInfo.cpp

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: lib/Driver/ToolChains/Clang.cpp:1523 + CmdArgs.push_back("-muninit-const-in-rodata"); + A->claim(); +} atanasyan wrote: > What's happened if the `-muninit-const-in-rodata` is used without >

[PATCH] D35914: [mips] Add support -m(no-)embedded-data option

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL309935: [mips] Add support -m(no-)embedded-data option (authored by sdardis). Repository: rL LLVM https://reviews.llvm.org/D35914 Files: cfe/trunk/include/clang/Driver/Options.td

[PATCH] D36712: Emit section information for extern variables

2017-08-15 Thread Simon Dardis via Phabricator via cfe-commits
sdardis requested changes to this revision. sdardis added a reviewer: kparzysz. sdardis added a comment. This revision now requires changes to proceed. +kparzysz as Hexagon also makes use of the small data section. Comment at: docs/LangRef.rst:629 +corresponding to the LLVM

[PATCH] D36551: [mips] Show warning in case of mixing -mlong-calls and -mabicalls options

2017-08-10 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM. Comment at: test/Driver/mips-longcalls-warning.c:1 +// REQUIRES: mips-registered-target +// RUN: %clang -### -c -target mips-mti-elf -mlong-calls %s 2>&1 | FileCheck

[PATCH] D36551: [mips] Show warning in case of mixing -mlong-calls and -mabicalls options

2017-08-10 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: include/clang/Basic/DiagnosticDriverKinds.td:296-297 +def warn_drv_unsupported_longcalls : Warning< + "ignoring '-mlong-calls' option as it cannot be used with " + "%select{|the implicit usage of }0-mabicalls">, + InGroup;

[PATCH] D30465: [mips] Set the Int64Type / IntMaxType types correctly for OpenBSD/mips64

2017-08-11 Thread Simon Dardis via Phabricator via cfe-commits
sdardis closed this revision. sdardis added a comment. Closing this, https://reviews.llvm.org/rL297098. Repository: rL LLVM https://reviews.llvm.org/D30465 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D36550: [mips] Notify user that `-mabicalls` is ignored on non-PIC N64 ABI

2017-08-10 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Nit: my comment on line 297, "non position-independent code and N64 ABI" should be "non position-independent code and the N64 ABI". LGTM otherwise. Repository: rL LLVM https://reviews.llvm.org/D36550 ___ cfe-commits

[PATCH] D36315: [mips] Support implicit gpopt with N64 when using -fno-pic

2017-08-11 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL310714: [mips] Support implicit gpopt with N64 when using -fno-pic (authored by sdardis). Repository: rL LLVM https://reviews.llvm.org/D36315 Files: cfe/trunk/lib/Driver/ToolChains/Clang.cpp

[PATCH] D35624: Removal of microMIPS64R6

2017-08-11 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. One nit inlined, you can address it when committing. Comment at: Basic/Targets/Mips.cpp:206 bool MipsTargetInfo::validateTarget(DiagnosticsEngine ) const { + if

[PATCH] D35982: [mips] Introducing option -mabs=[legacy/2008]

2017-08-11 Thread Simon Dardis via Phabricator via cfe-commits
sdardis requested changes to this revision. sdardis added a comment. This revision now requires changes to proceed. Follow @atanasyan 's suggestion and post a patch that renames that enum along with other changes. One comment inlined. Comment at:

[PATCH] D36315: [mips] Support implicit gpopt with N64 when using -fno-pic

2017-08-11 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Thanks for the review and spotting this bug that lead me to finding the other bug. Repository: rL LLVM https://reviews.llvm.org/D36315 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D36550: [mips] Notify user that `-mabicalls` is ignored on non-PIC N64 ABI

2017-08-10 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Slight tweak to the summary: > The -mabicalls option does not have a sense in case of non position > independent code on N64 ABI. After this change driver starts to show a > warning that -mabicalls is ignored in that case. The -mabicalls option does not make sense in

[PATCH] D36551: [mips] Show warning in case of mixing -mlong-calls and -mabicalls options

2017-08-10 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: test/Driver/mips-longcalls-warning.c:1 +// REQUIRES: mips-registered-target +// RUN: %clang -### -c -target mips-mti-elf -mlong-calls %s 2>&1 | FileCheck -check-prefix=IMPLICIT %s Can you put this in

[PATCH] D35254: [mips][mt][7/7] Add driver option for the MIPS MT ASE.

2017-07-11 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. https://reviews.llvm.org/D35254 Files: include/clang/Driver/Options.td lib/Driver/ToolChains/Arch/Mips.cpp test/Driver/mips-features.c Index: test/Driver/mips-features.c

[PATCH] D35549: [mips] Add support for -m(no-)local-sdata

2017-07-18 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. Teach the driver to support -m(no-)local-sdata. The backend already matches GCC's default behaviour. https://reviews.llvm.org/D35549 Files: include/clang/Driver/Options.td lib/Driver/ToolChains/Clang.cpp

[PATCH] D35548: [mips] Teach the driver to accept -m(no-)gpopt.

2017-07-18 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. This patch teaches the driver to pass -mgpopt by default to the backend when it is supported, i.e. we are using -mno-abicalls. https://reviews.llvm.org/D35548 Files: include/clang/Driver/Options.td

[PATCH] D35550: [mips] Add support for -m(no-)extern-data.

2017-07-18 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. Add support for -m(no-)extern-data when using -mgpopt in the driver. It is enabled by default in the backend. https://reviews.llvm.org/D35550 Files: include/clang/Driver/Options.td lib/Driver/ToolChains/Clang.cpp

[PATCH] D35548: [mips] Teach the driver to accept -m(no-)gpopt.

2017-07-18 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: lib/Driver/ToolChains/Clang.cpp:1490 + GPOpt->claim(); + } + atanasyan wrote: > Could it be rewritten a bit shorter? > > ``` > bool NoAbiCalls = > ABICalls &&

[PATCH] D35548: [mips] Teach the driver to accept -m(no-)gpopt.

2017-07-18 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 107114. sdardis marked an inline comment as done. sdardis added a comment. Addressed review comment, added warning when combining -mabicalls and -mgpopt. https://reviews.llvm.org/D35548 Files: include/clang/Basic/DiagnosticDriverKinds.td

[PATCH] D35549: [mips] Add support for -m(no-)local-sdata

2017-07-20 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL308683: [mips] Add support for -m(no-)local-sdata (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D35549?vs=107071=107592#toc Repository: rL LLVM

[PATCH] D35624: Removal of microMIPS64R6

2017-07-25 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a reviewer: cfe-commits. sdardis added a comment. Also, this need to be posted to cfe-commits. Repository: rL LLVM https://reviews.llvm.org/D35624 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D35550: [mips] Add support for -m(no-)extern-data.

2017-07-24 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL308879: [mips] Add support for -m(no-)extern-data. (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D35550?vs=107073=107897#toc Repository: rL LLVM

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-07-26 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. This option when combined with -mgpopt and -membedded-data places all uninitialized constant variables in the read-only section. https://reviews.llvm.org/D35917 Files: include/clang/Driver/Options.td

[PATCH] D35914: [mips] Add support -m(no-)embedded-data option

2017-07-26 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. Add support for the -membedded-data option which places constant data in the .rodata section, rather than the .sdata section. https://reviews.llvm.org/D35914 Files: include/clang/Driver/Options.td

[PATCH] D35479: [CodeGen][mips] Support `long_call/far/near` attributes

2017-07-19 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Some comments on the documentation. Comment at: include/clang/Basic/AttrDocs.td:1336 +if code compiled using ``-mlong-calls`` switch, it forces compiler to use +the ``jal`` instruction to call the function. + }]; rjmccall wrote: > I

[PATCH] D35548: [mips] Teach the driver to accept -m(no-)gpopt.

2017-07-19 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL308431: [mips] Teach the driver to accept -m(no-)gpopt. (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D35548?vs=107114=107275#toc Repository: rL LLVM

[PATCH] D35254: [mips][mt][7/7] Add driver option for the MIPS MT ASE.

2017-07-12 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL307847: [mips][mt][7/7] Add driver option for the MIPS MT ASE. (authored by sdardis). Repository: rL LLVM https://reviews.llvm.org/D35254 Files: cfe/trunk/include/clang/Driver/Options.td

[PATCH] D35479: [CodeGen][mips] Support `long_call/far/near` attributes

2017-07-19 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: include/clang/Basic/AttrDocs.td:1336 +if code compiled using ``-mlong-calls`` switch, it forces compiler to use +the ``jal`` instruction to call the function. + }]; rjmccall wrote: > sdardis wrote: > > rjmccall wrote:

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-04-25 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 96533. sdardis added a comment. Rebase + ping. https://reviews.llvm.org/D25866 Files: include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/Sema/SemaExpr.cpp lib/Sema/SemaExprCXX.cpp test/Sema/vector-cast.c

[PATCH] D36208: [mips] Enable target-specific attributes for MIPS64

2017-08-02 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. @aaron.ballman I missed your first comments when I'd submitted mine. In https://reviews.llvm.org/D36208#828957, @aaron.ballman wrote: > In https://reviews.llvm.org/D36208#828955, @sdardis wrote: > > > I think for the interrupt attribute, it should be an error. Currently

[PATCH] D35917: [mips] Implement -muninit-const-in-rodata

2017-08-03 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Ping. https://reviews.llvm.org/D35917 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D36315: [mips] Support implicit gpopt with N64 when using -fno-pic

2017-08-04 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. As clang defaults to -mno-abicalls when using -fno-pic for N64, implicitly use -mgpopt in that case. https://reviews.llvm.org/D36315 Files: lib/Driver/ToolChains/Clang.cpp test/Driver/mips-features.c Index:

[PATCH] D36824: [mips] Rename getSupportedNanEncoding() to getIEEE754Standard() (NFC)

2017-08-17 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM with comment addressed. Comment at: lib/Driver/ToolChains/Arch/Mips.cpp:328 +mips::IEEE754Standard mips::getIEEE754Standard(StringRef ) { + // Strictly speaking,

[PATCH] D35982: [mips] Introducing option -mabs=[legacy/2008]

2017-08-17 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM with a test for warnings. See test/Driver/mips-abicalls.c for reference. Repository: rL LLVM https://reviews.llvm.org/D35982 ___

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-05-15 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Thanks for the review. Repository: rL LLVM https://reviews.llvm.org/D25866 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D32900: [mips] Impose a threshold for coercion of aggregates

2017-05-09 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Spotted a minor nit. Comment at: test/CodeGen/mips-aggregate-arg.c:36 + f2(g2); + f3(g3); +} Nit: spurious whitespace here. https://reviews.llvm.org/D32900 ___ cfe-commits mailing

[PATCH] D32900: [mips] Impose a threshold for coercion of aggregates

2017-05-09 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM. Comment at: test/CodeGen/mips-aggregate-arg.c:3 +// RUN: %clang_cc1 -triple mips64el-unknown-linux-gnu -S -emit-llvm -o - %s -target-abi n32 | FileCheck

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-05-12 Thread Simon Dardis via Phabricator via cfe-commits
sdardis updated this revision to Diff 98783. sdardis marked an inline comment as done. sdardis edited the summary of this revision. sdardis added a comment. Updated error message for logical operations where one operand is a vector and the other isn't. Updated summary. I'll commit this

[PATCH] D25866: [Sema] Support implicit scalar to vector conversions

2017-05-12 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL302935: [Sema] Support implicit scalar to vector conversions (authored by sdardis). Changed prior to commit: https://reviews.llvm.org/D25866?vs=98783=98815#toc Repository: rL LLVM

[PATCH] D33363: [mips] Support `micromips` attribute

2017-05-20 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: include/clang/Basic/AttrDocs.td:1277-1278 +``__attribute__((nomicromips))`` attributes on MIPS targets. These attributes +may be attached to a function definition and instructs the backend to locally +select or turn off microMIPS code

[PATCH] D33363: [mips] Support `micromips` attribute

2017-05-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM. Repository: rL LLVM https://reviews.llvm.org/D33363 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33364: [mips] Support micromips attribute passed by front-end

2017-05-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. You should also add a test case to test/CodeGen/Mips/ showing that this attribute sets the assembler into micromips mode for some trivial function, along with another function without micromips being generated as non micromips code. Repository: rL LLVM

[PATCH] D33364: [mips] Support micromips attribute passed by front-end

2017-05-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM. Repository: rL LLVM https://reviews.llvm.org/D33364 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D32425: [mips] Make checks in CodeGen/mips-varargs.c less fragile

2017-05-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. LGTM,, https://reviews.llvm.org/D32425 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33401: [mips] Add runtime options to enable/disable generation of madd.fmt, msub.fmt

2017-05-31 Thread Simon Dardis via Phabricator via cfe-commits
sdardis requested changes to this revision. sdardis added a comment. This revision now requires changes to proceed. This also requires that __mips_no_madd4 is defined when the -mnomadd4 option is in use. https://reviews.llvm.org/D33401 ___

[PATCH] D33401: [mips] Add runtime options to enable/disable generation of madd.fmt, msub.fmt

2017-06-06 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. The new define also requires a test in test/Preprocessor/init.c - test that by default the new define isn't present, and in some case, when supplied with the -mno-madd4 that it is present.

[PATCH] D38168: [mips] Accept but ignore -m(no-)branch-likely

2017-09-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Herald added a subscriber: arichardson. -mbranch-likely and -mno-branch-likely are used in some build systems for some MIPS targets. Accept these options but ignore them as they are an (de)optimiztion hint, and that branch likely instructions were deprecated but not

[PATCH] D38110: [libunwind][MIPS]: Add support for unwinding in O32 and N64 processes.

2017-10-10 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Thanks for the pointer to that patch, I'll take a look tomorrow. Comment at: src/UnwindRegistersRestore.S:492 +#elif defined(__mips__) && _MIPS_SIM == _ABIO32 + Needs checking for soft-float. Comment at:

[PATCH] D38110: [libunwind][MIPS]: Add support for unwinding in O32 and N64 processes.

2017-10-16 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a reviewer: compnerd. sdardis added a subscriber: compnerd. sdardis added a comment. Two last inlined comments and I think that's everything. @compnerd Have I missed anything? Comment at: src/UnwindRegistersSave.S:100 +#

[PATCH] D38110: [libunwind][MIPS]: Add support for unwinding in O32 and N64 processes.

2017-10-13 Thread Simon Dardis via Phabricator via cfe-commits
sdardis requested changes to this revision. sdardis added a comment. This revision now requires changes to proceed. Marking this as changes required to clear up my review queue - no further comments. https://reviews.llvm.org/D38110 ___ cfe-commits

[PATCH] D38110: [libunwind][MIPS]: Add support for unwinding in O32 and N64 processes.

2017-10-12 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. I have tested this on one of my machines after removing the checks for soft float (my debian install doesn't have the necessary headers for soft-float). With the patch you've pointed out and my inline comments addressed (bar the HI / LO register comments), it passes

[PATCH] D38168: [mips] Accept but ignore -m(no-)branch-likely

2017-09-26 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL314213: [mips] Accept but ignore -m(no-)branch-likely (authored by sdardis). Repository: rL LLVM https://reviews.llvm.org/D38168 Files: cfe/trunk/include/clang/Driver/Options.td

[PATCH] D36954: [Sema] Update release notes with details of implicit scalar to vector conversions

2017-08-22 Thread Simon Dardis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL311441: [Sema] Update release notes with details of implicit scalar to vector… (authored by sdardis). Repository: rL LLVM https://reviews.llvm.org/D36954 Files:

[PATCH] D36954: [Sema] Update release notes with details of implicit scalar to vector conversions

2017-08-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. Thanks, Simon Repository: rL LLVM https://reviews.llvm.org/D36954 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D36954: [Sema] Update release notes with details of implicit scalar to vector conversions

2017-08-21 Thread Simon Dardis via Phabricator via cfe-commits
sdardis created this revision. Add notes on this to the C language section, along with the C++ section. https://reviews.llvm.org/D36954 Files: docs/ReleaseNotes.rst Index: docs/ReleaseNotes.rst === --- docs/ReleaseNotes.rst

[PATCH] D36712: Emit section information for extern variables

2017-08-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis accepted this revision. sdardis added a comment. This revision is now accepted and ready to land. I agree with @kparzysz here. If there is a mis-match between the declaration and definition, there are cases where undesirable behaviour (as such) will not occur depending on how the

[PATCH] D36712: Emit section information for extern variables

2017-08-22 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. > One suggestion inline for the wording inline, the important part is making > explicit The important part is making explicit that section information for a variable can be explicit or inferred. https://reviews.llvm.org/D36712

[PATCH] D38110: [libunwind][MIPS]: Add support for unwinding in O32 and N64 processes.

2017-09-27 Thread Simon Dardis via Phabricator via cfe-commits
sdardis edited subscribers, added: cfe-commits; removed: llvm-commits. sdardis added a comment. +CC cfe-commits, -CC llvm-commits. Some comments inlined. I've managed to run the test-suite on one of my machines here and I'm seeing 3 failures: libunwind :: libunwind_01.pass.cpp libunwind

[PATCH] D39074: [libunwind][MIPS]: Add support for unwinding in N32 processes.

2017-10-24 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: include/__libunwind_config.h:59-68 +# elif defined(__mips__) && defined(_ABIN32) && defined(__mips_soft_float) +# define _LIBUNWIND_TARGET_MIPS_N64 1 +# define _LIBUNWIND_CONTEXT_SIZE 35 +# define _LIBUNWIND_CURSOR_SIZE 46 +# define

[PATCH] D39074: [libunwind][MIPS]: Add support for unwinding in N32 processes.

2017-12-13 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added inline comments. Comment at: include/__libunwind_config.h:73 +# elif defined(_ABIN32) && defined(__mips_soft_float) +#define _LIBUNWIND_TARGET_MIPS_NEWABI 1 +#define _LIBUNWIND_CONTEXT_SIZE 35 compnerd wrote: > Minor nit: I prefer either

[PATCH] D38110: [libunwind][MIPS]: Add support for unwinding in O32 and N64 processes.

2017-11-16 Thread Simon Dardis via Phabricator via cfe-commits
sdardis added a comment. @compnerd, ping? https://reviews.llvm.org/D38110 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

  1   2   >