SjoerdMeijer (Sjoerd Meijer)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 26 2016, 2:17 AM (94 w, 5 d)

Recent Activity

Thu, Nov 16

SjoerdMeijer accepted D40034: [DAGCombine] Enable more srl + load combines.

Looks good to me.

Thu, Nov 16, 12:58 AM

Wed, Nov 15

SjoerdMeijer added a comment to D40034: [DAGCombine] Enable more srl + load combines.

Hi Sam, that's a very nice optimisation, but I think we need more tests. The "variables" that we have here are the values types (load byte, load half, load word), and the different possible offsets. Guessing a bit here, but that must be something like 3 * 3(?) = 9 tests.
And another question is how this interacts with -munaligned-access and -mno-unaligned-access?

Wed, Nov 15, 1:28 AM
SjoerdMeijer accepted D40030: [AArch64][TableGen] Skip tied result operands for InstAlias.

Looks like a straightforward fix of D29219 to me. But perhaps wait a little bit with committing, just in case @rengolin who did the original review has some more comments.

Wed, Nov 15, 12:26 AM

Tue, Nov 7

SjoerdMeijer committed rL317558: [docs] Add section 'Half-Precision Floating Point'.
[docs] Add section 'Half-Precision Floating Point'
Tue, Nov 7, 2:10 AM
SjoerdMeijer closed D35295: [docs] Add section 'Half-Precision Floating Point' by committing rL317558: [docs] Add section 'Half-Precision Floating Point'.
Tue, Nov 7, 2:10 AM

Thu, Nov 2

SjoerdMeijer updated the diff for D35295: [docs] Add section 'Half-Precision Floating Point'.

Many thanks for the reviews and suggestions! Comments addressed.

Thu, Nov 2, 3:05 AM

Tue, Oct 31

SjoerdMeijer updated the diff for D35295: [docs] Add section 'Half-Precision Floating Point'.

Addressed the comments about portability, and added a note that Float16 is available in both C and C++ mode.

Tue, Oct 31, 9:54 AM

Oct 16 2017

SjoerdMeijer committed rL315904: ISel type legalizer: debug messages. NFC..
ISel type legalizer: debug messages. NFC.
Oct 16 2017, 7:07 AM
SjoerdMeijer closed D38726: ISel type legalizer: debug messages. NFC. by committing rL315904: ISel type legalizer: debug messages. NFC..
Oct 16 2017, 7:07 AM

Oct 13 2017

SjoerdMeijer committed rL315679: [FileCheck] regexp doc update/fix.
[FileCheck] regexp doc update/fix
Oct 13 2017, 7:02 AM
SjoerdMeijer closed D38787: [FileCheck] doc update/fix by committing rL315679: [FileCheck] regexp doc update/fix.
Oct 13 2017, 7:02 AM

Oct 12 2017

SjoerdMeijer updated the diff for D38787: [FileCheck] doc update/fix.

Thanks for reviewing/checking. The regexp class implements both BRE and ERE, but it defaults to using ERE. Thus FileCheck defaults to ERE. As the mode is not exposed to the user (with e.g. an option), I kept it simple and now say that FileCheck supports ERE.

Oct 12 2017, 1:58 AM

Oct 11 2017

SjoerdMeijer added a comment to D38787: [FileCheck] doc update/fix.

I would like to add links for BRE and ERE, to get a quick syntax overview. Not sure what page would be best for that, and if we e.g. can or like to link to wikipedia (https://en.wikipedia.org/wiki/Regular_expression#POSIX_basic_and_extended) or something else.

Oct 11 2017, 1:56 AM
SjoerdMeijer retitled D38787: [FileCheck] doc update/fix from [arm-llvm-patches] [FileCheck] doc update/fix to [FileCheck] doc update/fix.
Oct 11 2017, 1:51 AM
SjoerdMeijer created D38787: [FileCheck] doc update/fix.
Oct 11 2017, 1:49 AM

Oct 10 2017

SjoerdMeijer created D38726: ISel type legalizer: debug messages. NFC..
Oct 10 2017, 6:25 AM

Oct 4 2017

SjoerdMeijer added inline comments to D38315: [ARM] Add f16 type support and code generation (part 1/2).
Oct 4 2017, 5:41 AM
SjoerdMeijer added a comment to D38315: [ARM] Add f16 type support and code generation (part 1/2).

Just clarifying a typo in my previous comment:

Oct 4 2017, 2:22 AM
SjoerdMeijer updated the diff for D38315: [ARM] Add f16 type support and code generation (part 1/2).

I have:

  • removed the f16 type from the calling conventions except for ARM_AAPCS_VFP. It's necessary to add them elsewhere, the default behaviour is what we want.
  • added a test case using the hard float abi, but without fullfp16 support.
  • added some comments about the HPR register class.
Oct 4 2017, 2:19 AM
SjoerdMeijer updated the summary of D38315: [ARM] Add f16 type support and code generation (part 1/2).
Oct 4 2017, 2:16 AM

Oct 3 2017

SjoerdMeijer committed rL314773: ISel type legalization: add debug messages. NFCI..
ISel type legalization: add debug messages. NFCI.
Oct 3 2017, 1:56 AM
SjoerdMeijer closed D38450: ISel type legalization: add debug messages. NFC. by committing rL314773: ISel type legalization: add debug messages. NFCI..
Oct 3 2017, 1:56 AM
SjoerdMeijer added a comment to D38450: ISel type legalization: add debug messages. NFC..

Hi Sam, many thanks for checking! Cheers, Sjoerd.

Oct 3 2017, 1:52 AM

Oct 2 2017

SjoerdMeijer updated the diff for D38450: ISel type legalization: add debug messages. NFC..

Added some more.

Oct 2 2017, 7:29 AM
SjoerdMeijer added a comment to D38315: [ARM] Add f16 type support and code generation (part 1/2).

Realised that I am not testing hard float abi without fullfp16 support. And now see that code generation is not really optimal: it is generating eabi calls for the fp16 <-> fp conversions, whereas it should use the normal convert instructions. Fixing this.

Oct 2 2017, 4:05 AM
SjoerdMeijer created D38450: ISel type legalization: add debug messages. NFC..
Oct 2 2017, 2:24 AM

Sep 29 2017

SjoerdMeijer accepted D36789: [ARM] v8.3-a complex number support.

Looks good to me. Thanks.

Sep 29 2017, 5:36 AM
SjoerdMeijer added inline comments to D36789: [ARM] v8.3-a complex number support.
Sep 29 2017, 3:35 AM

Sep 27 2017

SjoerdMeijer created D38315: [ARM] Add f16 type support and code generation (part 1/2).
Sep 27 2017, 6:40 AM

Sep 26 2017

SjoerdMeijer accepted D38234: [ARM] isTruncateFree fix.

Looks good to me (sorry I missed this in the other/previous review; I looked at it and thought it was alright...)

Sep 26 2017, 3:30 PM

Sep 22 2017

SjoerdMeijer added a comment to D35946: Fix printing of alias instructions by removing redundant spacing.

looks reasonable to me

Sep 22 2017, 4:04 AM
SjoerdMeijer added a comment to D23601: [TII] add new target hook isAdd.

The context of this work was to recognise loop induction statements in Machine Instructions/Loops and to allow calculation of loop iteration counts. And isAdd provides more semantic information about a MI and helps recognising induction variables. Thus, this was the ground work for D27193, which was the next step to recognise loop induction. This patch was abandoned because the Quentin's comment was that the analysis was too ad-hoc and missing some formalism. The reason this is used only in the Hexagon backend, is because I refactored it and took it from the Hexagon backend. The Hexagon backend has a lot of MachineLoop/MI analysis and other goodness (sw pipeliner) that is mostly target independent and could be made available, but a few target specific hooks are required to do this.
Now, I really would like to pick up this work again because I still think it will be valuable, but need to rethink strategy after abandoning D27193. Probably that will be a some SVEC-like approach, but hopefully that can be a light-weight implementation to recognise simple loops (which is what we're doing anyway). This will probably be quite some work, so in the mean time, I really don't mind removing or moving isAdd back to the Hexagon backend. I could also dig up the exact requirements and document that if it's okay to keep it.

Sep 22 2017, 12:40 AM

Sep 18 2017

SjoerdMeijer committed rL313531: [ARM] Fix for indexed dot product instruction descriptions.
[ARM] Fix for indexed dot product instruction descriptions
Sep 18 2017, 7:19 AM
SjoerdMeijer closed D37968: [ARM] Fix for indexed dot product instruction descriptions by committing rL313531: [ARM] Fix for indexed dot product instruction descriptions.
Sep 18 2017, 7:19 AM
SjoerdMeijer added a comment to D37968: [ARM] Fix for indexed dot product instruction descriptions.

Thanks for checking!

Sep 18 2017, 7:10 AM
SjoerdMeijer added a comment to D37968: [ARM] Fix for indexed dot product instruction descriptions.

I was just replying, but yes, there are only 4 bits available to encode Vm, the other M bit is the index.

Sep 18 2017, 7:03 AM
SjoerdMeijer added a comment to D37968: [ARM] Fix for indexed dot product instruction descriptions.

Hi, the full architecture specification is publicly available here:

Sep 18 2017, 5:03 AM
SjoerdMeijer created D37968: [ARM] Fix for indexed dot product instruction descriptions.
Sep 18 2017, 3:54 AM

Sep 15 2017

SjoerdMeijer committed rL313351: [AArch64] allow v8f16 types when FullFP16 is supported.
[AArch64] allow v8f16 types when FullFP16 is supported
Sep 15 2017, 2:26 AM
SjoerdMeijer closed D37802: [AArch64] allow v8f16 types when FullFP16 is supported by committing rL313351: [AArch64] allow v8f16 types when FullFP16 is supported.
Sep 15 2017, 2:26 AM
SjoerdMeijer accepted D37516: [ARM] Implement isTruncateFree.

Looks reasonable to me.

Sep 15 2017, 1:34 AM

Sep 13 2017

SjoerdMeijer committed rL313152: This adds the _Float16 preprocessor macro definitions..
This adds the _Float16 preprocessor macro definitions.
Sep 13 2017, 8:24 AM
SjoerdMeijer closed D34695: _Float16 preprocessor macro definitions by committing rL313152: This adds the _Float16 preprocessor macro definitions..
Sep 13 2017, 8:24 AM
SjoerdMeijer added a comment to D34695: _Float16 preprocessor macro definitions.

many thanks for reviewing and your help.

Sep 13 2017, 8:20 AM
SjoerdMeijer created D37802: [AArch64] allow v8f16 types when FullFP16 is supported.
Sep 13 2017, 6:06 AM
SjoerdMeijer updated the diff for D34695: _Float16 preprocessor macro definitions.

Fixed the typos, and added tests.

Sep 13 2017, 1:42 AM

Sep 12 2017

SjoerdMeijer added inline comments to D34695: _Float16 preprocessor macro definitions.
Sep 12 2017, 9:05 AM
SjoerdMeijer committed rL313017: [AArch64] ISel: Add some debug messages to LowerBUILDVECTOR. NFC..
[AArch64] ISel: Add some debug messages to LowerBUILDVECTOR. NFC.
Sep 12 2017, 3:25 AM
SjoerdMeijer closed D37676: [AArch64] ISel: Add some debug messages to LowerBUILDVECTOR. NFC. by committing rL313017: [AArch64] ISel: Add some debug messages to LowerBUILDVECTOR. NFC..
Sep 12 2017, 3:25 AM

Sep 11 2017

SjoerdMeijer created D37676: [AArch64] ISel: Add some debug messages to LowerBUILDVECTOR. NFC..
Sep 11 2017, 1:30 AM

Sep 8 2017

SjoerdMeijer committed rL312798: Add _Float16 as a C/C++ source language type.
Add _Float16 as a C/C++ source language type
Sep 8 2017, 9:44 AM
SjoerdMeijer committed rL312794: Recommit "Add _Float16 as a C/C++ source language type".
Recommit "Add _Float16 as a C/C++ source language type"
Sep 8 2017, 8:16 AM
SjoerdMeijer committed rL312784: Revert "Add _Float16 as a C/C++ source language type".
Revert "Add _Float16 as a C/C++ source language type"
Sep 8 2017, 3:24 AM
SjoerdMeijer committed rL312781: Add _Float16 as a C/C++ source language type.
Add _Float16 as a C/C++ source language type
Sep 8 2017, 2:44 AM
SjoerdMeijer closed D33719: Add _Float16 as a C/C++ source language type by committing rL312781: Add _Float16 as a C/C++ source language type.
Sep 8 2017, 2:43 AM
SjoerdMeijer added a comment to D33719: Add _Float16 as a C/C++ source language type.

Many thanks for reviewing and your help!

Sep 8 2017, 2:38 AM

Sep 6 2017

SjoerdMeijer added a comment to D33719: Add _Float16 as a C/C++ source language type.

I am going to commit this within a few days. That looks reasonable to me given that the comments in the last reviews were very minor (which I have of course addressed already). Also, in case of issues, I am guessing fixes and/or addition can be easily done post-commit, and if not a revert is cheap.

Sep 6 2017, 8:49 AM

Aug 30 2017

SjoerdMeijer accepted D36792: [AArch64] v8.3-a complex number support.

Hi Sam, many thanks for refactoring this. Looks really good now! Just 2 nits inlined, but no need for another review.
Cheers, Sjoerd.

Aug 30 2017, 7:44 AM
SjoerdMeijer added inline comments to D36792: [AArch64] v8.3-a complex number support.
Aug 30 2017, 5:15 AM
SjoerdMeijer updated the diff for D33719: Add _Float16 as a C/C++ source language type.

Comments addressed. Thanks for reviewing.

Aug 30 2017, 3:03 AM
SjoerdMeijer committed rL312104: [AArch64] allow v4f16 types when FullFP16 is supported.
[AArch64] allow v4f16 types when FullFP16 is supported
Aug 30 2017, 1:39 AM
SjoerdMeijer closed D37145: [AArch64] allow v4f16 types when FullFP16 is supported by committing rL312104: [AArch64] allow v4f16 types when FullFP16 is supported.
Aug 30 2017, 1:39 AM

Aug 29 2017

SjoerdMeijer updated the diff for D33719: Add _Float16 as a C/C++ source language type.

No changes were needed to make the conversions work, the existing logic is taking care of that, but I agree it doesn't hurt to add a few test cases. So I've added tests to both files, and cleaned up that comment.

Aug 29 2017, 8:57 AM
SjoerdMeijer updated the diff for D37145: [AArch64] allow v4f16 types when FullFP16 is supported.

Thanks for reviewing! I've addressed your comments: have set operation action to 'promote', added checks to test fcmp, and also added checks when fp16 is disabled.

Aug 29 2017, 7:19 AM
SjoerdMeijer updated the diff for D37145: [AArch64] allow v4f16 types when FullFP16 is supported.

Fixed typo in test case type declaration.

Aug 29 2017, 4:06 AM
SjoerdMeijer added a comment to D37145: [AArch64] allow v4f16 types when FullFP16 is supported.

Forgot to mention that I will address the v8f16 types in a separate patch.

Aug 29 2017, 1:24 AM

Aug 25 2017

SjoerdMeijer added inline comments to D36792: [AArch64] v8.3-a complex number support.
Aug 25 2017, 7:34 AM
SjoerdMeijer created D37145: [AArch64] allow v4f16 types when FullFP16 is supported.
Aug 25 2017, 6:51 AM

Aug 24 2017

SjoerdMeijer committed rL311662: [AArch64] Add FMOVH0: materialize 0 using zero register for f16 values.
[AArch64] Add FMOVH0: materialize 0 using zero register for f16 values
Aug 24 2017, 7:48 AM
SjoerdMeijer closed D37102: [AArch64] Add FMOVH0: materialize 0 using zero register for f16 values by committing rL311662: [AArch64] Add FMOVH0: materialize 0 using zero register for f16 values.
Aug 24 2017, 7:48 AM
SjoerdMeijer accepted D37106: [Driver][AArch64] Tests for rdm feature..

Thanks for fixing this.

Aug 24 2017, 7:22 AM
SjoerdMeijer accepted D37081: [TargetParser][AArch64] Add support for RDM feature in the target parser..

lgtm

Aug 24 2017, 5:59 AM
SjoerdMeijer updated the diff for D37102: [AArch64] Add FMOVH0: materialize 0 using zero register for f16 values.

Added test case.

Aug 24 2017, 4:15 AM
SjoerdMeijer created D37102: [AArch64] Add FMOVH0: materialize 0 using zero register for f16 values.
Aug 24 2017, 3:32 AM
SjoerdMeijer committed rL311646: [AArch64] Custom lowering of copysign f16.
[AArch64] Custom lowering of copysign f16
Aug 24 2017, 2:22 AM
SjoerdMeijer closed D36893: [AArch64] Custom lowering of copysign f16 by committing rL311646: [AArch64] Custom lowering of copysign f16.
Aug 24 2017, 2:22 AM
SjoerdMeijer committed rL311635: [AArch64] fix for fcos and frem f16 promotion.
[AArch64] fix for fcos and frem f16 promotion
Aug 24 2017, 12:45 AM
SjoerdMeijer closed D37071: [AArch64] fix for fcos and frem f16 promotion. by committing rL311635: [AArch64] fix for fcos and frem f16 promotion.
Aug 24 2017, 12:45 AM
SjoerdMeijer added a comment to D37081: [TargetParser][AArch64] Add support for RDM feature in the target parser..

Looks good to me, was wondering if you're also planning to add a Clang patch to test +rdm?

Aug 24 2017, 12:34 AM

Aug 23 2017

SjoerdMeijer created D37071: [AArch64] fix for fcos and frem f16 promotion..
Aug 23 2017, 9:19 AM
SjoerdMeijer added a comment to D36893: [AArch64] Custom lowering of copysign f16.

Just to clarify my last comment, I will repeat the exercise I did in D36396 allowing f16 scalars, and will now start working on allowing f16 vector types. I will then also add tests for these.

Aug 23 2017, 8:29 AM
SjoerdMeijer updated the diff for D36893: [AArch64] Custom lowering of copysign f16.

I have removed the special case, and added the vector types.
For the copysign intrinsics working on these vectors, I have not yet added new test cases, because it looks like I first have to first do some work to allow f16 vectors.

Aug 23 2017, 8:15 AM
SjoerdMeijer committed rL311533: [AArch64] ISel legalization debug messages. NFCI..
[AArch64] ISel legalization debug messages. NFCI.
Aug 23 2017, 1:19 AM
SjoerdMeijer closed D36964: [AArch64] ISel legalization debug messages. NFCI. by committing rL311533: [AArch64] ISel legalization debug messages. NFCI..
Aug 23 2017, 1:19 AM
SjoerdMeijer added a comment to D36964: [AArch64] ISel legalization debug messages. NFCI..

thanks for reviewing!

Aug 23 2017, 1:12 AM
SjoerdMeijer updated the diff for D36964: [AArch64] ISel legalization debug messages. NFCI..

Added missing spaces.

Aug 23 2017, 1:03 AM

Aug 22 2017

SjoerdMeijer updated the diff for D36964: [AArch64] ISel legalization debug messages. NFCI..

Hi Alex, thanks for the feedback. The difficulty here is finding the right balance of adding (good) debug messages, and not cluttering the code too much. I think what you are suggesting is what I had in my first revision: that had debug messages in the different AArch64 lowering functions. Then Sam's suggestion was to move some of these messages to SelectionDAG (which we did in D36984), which has 2 advantages: all targets benefit, and it does not clutter up the code. Also, I think this is quite difficult to get completely right the first time. So I think we will have to see what works and what is good and I will be adding more stuff as I go along. There's a lot of room for improvement here, but I already find these extra debug messages quite useful...

Aug 22 2017, 8:51 AM
SjoerdMeijer updated the diff for D36964: [AArch64] ISel legalization debug messages. NFCI..

Removed the debug messages that were moved to SelectionDAG in D36984

Aug 22 2017, 7:09 AM
SjoerdMeijer committed rL311444: [SelectionDAG] Add getNode debug messages.
[SelectionDAG] Add getNode debug messages
Aug 22 2017, 3:45 AM
SjoerdMeijer closed D36984: [SelectionDAG] Add getNode debug messages by committing rL311444: [SelectionDAG] Add getNode debug messages.
Aug 22 2017, 3:45 AM
SjoerdMeijer updated the diff for D36984: [SelectionDAG] Add getNode debug messages.

Hi Sam, thanks for reviewing. I have addressed your comments. Cheers.

Aug 22 2017, 2:45 AM
SjoerdMeijer committed rL311438: [AArch64] Cleanup of HasFullFP16 argument. NFC..
[AArch64] Cleanup of HasFullFP16 argument. NFC.
Aug 22 2017, 2:22 AM
SjoerdMeijer closed D36978: [AArch64] Cleanup of HasFullFP16 argument. NFC. by committing rL311438: [AArch64] Cleanup of HasFullFP16 argument. NFC..
Aug 22 2017, 2:22 AM
SjoerdMeijer updated the diff for D36984: [SelectionDAG] Add getNode debug messages.

Just added a few more debug messages.

Aug 22 2017, 1:10 AM

Aug 21 2017

SjoerdMeijer added a comment to D36964: [AArch64] ISel legalization debug messages. NFCI..

I will split this patch up in a target dependent, and target independent patch. I will continue here with the AArch64 specific messages, and I have created D36984 for some of the debug messages that I moved to SelectionDAG getNode functions.

Aug 21 2017, 3:36 PM
SjoerdMeijer created D36984: [SelectionDAG] Add getNode debug messages.
Aug 21 2017, 3:31 PM
SjoerdMeijer created D36978: [AArch64] Cleanup of HasFullFP16 argument. NFC..
Aug 21 2017, 1:03 PM
SjoerdMeijer added a comment to D36964: [AArch64] ISel legalization debug messages. NFCI..

The disadvantage of moving it to SelectionDAG is that we lose the context where the new nodes are created. In other words, the debug message will (potentially) become less specific. But since they currently do not have an awful lot of context, I think your suggestion makes sense. I will experiment to see if it works.

Aug 21 2017, 9:15 AM
SjoerdMeijer created D36964: [AArch64] ISel legalization debug messages. NFCI..
Aug 21 2017, 8:27 AM
SjoerdMeijer accepted D36666: [ObjC] Use consistent comment style in inline asm.

Looks reasonable to me.

Aug 21 2017, 2:41 AM