Page MenuHomePhabricator

pmatos (Paulo Matos)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 28 2016, 2:19 AM (334 w, 7 h)

Recent Activity

Mon, Mar 20

pmatos added inline comments to D139010: [clang][WebAssembly] Implement support for table types and builtins.
Mon, Mar 20, 5:35 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Address concerns about table subscripting. Add warnings for that.

Mon, Mar 20, 5:35 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Remove references to table subscript. Simplify patch.

Mon, Mar 20, 3:24 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Rebase on main.

Mon, Mar 20, 1:47 AM · Restricted Project, Restricted Project, Restricted Project

Fri, Mar 17

pmatos committed rG8d0c88975212: [clang][WebAssembly] Initial support for reference type funcref in clang (authored by pmatos).
[clang][WebAssembly] Initial support for reference type funcref in clang
Fri, Mar 17, 10:32 AM · Restricted Project, Restricted Project
pmatos closed D128440: [WebAssembly] Initial support for reference type funcref in clang.
Fri, Mar 17, 10:32 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D128440: [WebAssembly] Initial support for reference type funcref in clang.

Thanks all for the comments, fixed and will soon land after running a check-all.

Fri, Mar 17, 9:08 AM · Restricted Project, Restricted Project, Restricted Project

Wed, Mar 8

pmatos added a comment to D128440: [WebAssembly] Initial support for reference type funcref in clang.

@erichkeane @aaron.ballman any further comments on this?

Wed, Mar 8, 1:41 AM · Restricted Project, Restricted Project, Restricted Project

Mon, Mar 6

pmatos added inline comments to D145308: [lld][WebAssembly] Initial support for stub libraries.
Mon, Mar 6, 7:17 AM · Restricted Project, Restricted Project
pmatos added a reverting change for rGb293de988059: [Docs] Add my Office Hours: rG9f493be7e695: Revert "[Docs] Add my Office Hours".
Mon, Mar 6, 1:52 AM · Restricted Project, Restricted Project
pmatos committed rG9f493be7e695: Revert "[Docs] Add my Office Hours" (authored by pmatos).
Revert "[Docs] Add my Office Hours"
Mon, Mar 6, 1:52 AM · Restricted Project, Restricted Project

Tue, Feb 28

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Address comments regarding tables and remove some unused code.

Tue, Feb 28, 7:50 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D139010: [clang][WebAssembly] Implement support for table types and builtins.
Tue, Feb 28, 5:51 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Address the comments.

Tue, Feb 28, 5:47 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Add forgotten comment to test.

Tue, Feb 28, 4:02 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Patch with all outstanding comments addressed.

Tue, Feb 28, 3:41 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D128440: [WebAssembly] Initial support for reference type funcref in clang.

Thanks @aaron.ballman . I think I have now address all outstanding comments.

Tue, Feb 28, 3:40 AM · Restricted Project, Restricted Project, Restricted Project

Feb 15 2023

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Rebased on current HEAD.

Feb 15 2023, 4:21 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Rebased on current HEAD.

Feb 15 2023, 4:20 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Rebased against HEAD. Waiting for @vitalybuka go ahead to land.

Feb 15 2023, 4:20 AM · Restricted Project, Restricted Project, Restricted Project

Feb 14 2023

pmatos added a comment to D128440: [WebAssembly] Initial support for reference type funcref in clang.

@aaron.ballman I have finished addressing all the concerns on this patch. Do you have any further comments?

Feb 14 2023, 7:39 AM · Restricted Project, Restricted Project, Restricted Project

Feb 13 2023

pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Feb 13 2023, 8:33 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Remove unnecessary code.

Feb 13 2023, 8:33 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Further refinement of the patch with more diagnostics tested.

Feb 13 2023, 8:31 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Feb 13 2023, 8:31 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Addressed a few comments.

Feb 13 2023, 5:14 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Feb 13 2023, 5:13 AM · Restricted Project, Restricted Project, Restricted Project

Feb 1 2023

pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Address some of the pending comments.

Feb 1 2023, 5:43 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Feb 1 2023, 5:34 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Feb 1 2023, 5:15 AM · Restricted Project, Restricted Project, Restricted Project

Jan 31 2023

pmatos committed rGeb66833d1957: [clang][WebAssembly] Initial support for reference type externref in clang (authored by pmatos).
[clang][WebAssembly] Initial support for reference type externref in clang
Jan 31 2023, 8:35 AM · Restricted Project, Restricted Project, Restricted Project
pmatos closed D122215: [WebAssembly] Initial support for reference type externref in clang.
Jan 31 2023, 8:35 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Address last comment before landing.

Jan 31 2023, 8:28 AM · Restricted Project, Restricted Project, Restricted Project

Jan 30 2023

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Rebase on main and fix a test diagnostic expectation.

Jan 30 2023, 3:32 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Rebase on main.

Jan 30 2023, 2:27 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Rebase on main.

Jan 30 2023, 1:04 AM · Restricted Project, Restricted Project, Restricted Project

Jan 24 2023

pmatos added a comment to D139010: [clang][WebAssembly] Implement support for table types and builtins.

@aaron.ballman Thanks for all the comments, I have now finished addressing those. What do you think of the current patch?

Jan 24 2023, 7:33 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Add missing newline at end of file.

Jan 24 2023, 7:33 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D139010: [clang][WebAssembly] Implement support for table types and builtins.
Jan 24 2023, 7:32 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Simplify and add tests for remaining diagnostics

Jan 24 2023, 7:19 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Further tests for use of tables in conditional branches.

Jan 24 2023, 4:02 AM · Restricted Project, Restricted Project, Restricted Project

Jan 23 2023

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Finish fixing tests after dianostic message changes

Jan 23 2023, 11:11 PM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Fix some tests whose diagnostics changed

Jan 23 2023, 11:34 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Address more comments.

Jan 23 2023, 6:47 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D139010: [clang][WebAssembly] Implement support for table types and builtins.
Jan 23 2023, 5:47 AM · Restricted Project, Restricted Project, Restricted Project

Jan 18 2023

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Remove some unnecessary diagnostics.

Jan 18 2023, 9:52 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D139010: [clang][WebAssembly] Implement support for table types and builtins.
Jan 18 2023, 8:35 AM · Restricted Project, Restricted Project, Restricted Project

Jan 16 2023

pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Jan 16 2023, 7:26 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Add new Attr Subject Function Pointer for __funcref attribute.

Jan 16 2023, 7:25 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

I feel like the latest patch addresses all concerns until now. What do you think?

Jan 16 2023, 5:49 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Rebase on main.

Jan 16 2023, 5:49 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Updating tests after some changes to previous diagnostics.

Jan 16 2023, 2:11 AM · Restricted Project, Restricted Project, Restricted Project

Jan 13 2023

pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Address a few comments, add new test for funcref keyword diagnostic.

Jan 13 2023, 8:50 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Rename test that still had tables in its name.

Jan 13 2023, 7:38 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Fix tests after changing name mangling and error messages.

Jan 13 2023, 7:21 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Jan 13 2023, 4:48 AM · Restricted Project, Restricted Project, Restricted Project

Jan 12 2023

pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Update mangling for Microsoft.

Jan 12 2023, 11:48 PM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D122215: [WebAssembly] Initial support for reference type externref in clang.
Jan 12 2023, 11:46 PM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Now under the correct revision: @aaron.ballman Added support for externref mangling in Microsoft. This follows the pattern implemented by OpenCL types.

Jan 12 2023, 7:41 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Undo last patch. Submitted change to incorrect revision.

Jan 12 2023, 7:33 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D128440: [WebAssembly] Initial support for reference type funcref in clang.

@aaron.ballman Added support for externref mangling in Microsoft. This follows the pattern implemented by OpenCL types.

Jan 12 2023, 7:30 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

@aaron.ballman Added support for externref mangling in Microsoft. This follows the pattern implemented by OpenCL types.

Jan 12 2023, 7:29 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

@aaron.ballman many thanks for the thorough reviews on the patches. Happy to see this moving in the right direction.

Jan 12 2023, 6:39 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Address all comments except a couple of issues related to ABI and mangling.

Jan 12 2023, 6:23 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D122215: [WebAssembly] Initial support for reference type externref in clang.
Jan 12 2023, 6:22 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D122215: [WebAssembly] Initial support for reference type externref in clang.
Jan 12 2023, 5:11 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Deal with Itanium Mangle and assert false outside Wasm triple.

Jan 12 2023, 5:10 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added inline comments to D122215: [WebAssembly] Initial support for reference type externref in clang.
Jan 12 2023, 4:45 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Address a couple of comments by @aaron.ballman

Jan 12 2023, 4:25 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

Addressed a few comments downstream. Will upload new patch next.

Jan 12 2023, 4:08 AM · Restricted Project, Restricted Project, Restricted Project

Jan 11 2023

pmatos added a comment to D128440: [WebAssembly] Initial support for reference type funcref in clang.

@aaron.ballman Hi Aaron, since you requested an RFC for this. I wonder if you have any comments for this or the other related patches: D122215, D139010

Jan 11 2023, 1:23 AM · Restricted Project, Restricted Project, Restricted Project

Jan 10 2023

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Fix test broken after recent change to opt call. Rebase again on main.

Jan 10 2023, 4:23 AM · Restricted Project, Restricted Project, Restricted Project

Jan 9 2023

pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Rebase on top of main.

Jan 9 2023, 11:39 PM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Rebase on top of main.

Jan 9 2023, 11:39 PM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Rebasing on top of main.

Jan 9 2023, 11:12 PM · Restricted Project, Restricted Project, Restricted Project

Dec 20 2022

pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

Thanks for the patch! I just tried it out and I think this enables many interesting use cases for WebAssembly when using C/C++.

Currently the lowering to wasm does not work when using externrefs when compiling without optimizations. Is that intended behavior?

I have posted a new patch that fixed this. Can you please try it again and see if it works as you expect?

Thanks for the quick update, it works now!

Does this affect the debugging experience of the generated wasm programs? If you force mem2reg to run for all programs, no function arguments will be written to the "stack" referenced by the __stack_pointer global variable anymore. I don't know whether any wasm runtime actually uses that for debugging, though.

Dec 20 2022, 1:10 AM · Restricted Project, Restricted Project, Restricted Project

Dec 15 2022

pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

Thanks for the patch! I just tried it out and I think this enables many interesting use cases for WebAssembly when using C/C++.

Currently the lowering to wasm does not work when using externrefs when compiling without optimizations. Is that intended behavior?

Dec 15 2022, 8:38 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Force mem2reg on all optimization levels to avoid allocas.

Dec 15 2022, 8:36 AM · Restricted Project, Restricted Project, Restricted Project

Dec 14 2022

pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

Thanks for the patch! I just tried it out and I think this enables many interesting use cases for WebAssembly when using C/C++.

Currently the lowering to wasm does not work when using externrefs when compiling without optimizations. Is that intended behavior?

No - thanks for trying this out. This is definitely not intended behaviour. Somehow I probably didn't test enough without optimizations. I was expecting that the pass mem2reg would get rid of the allocas, but maybe it's not running at those optimization levels. I will have to take a closer look.

Dec 14 2022, 8:48 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D122215: [WebAssembly] Initial support for reference type externref in clang.

Thanks for the patch! I just tried it out and I think this enables many interesting use cases for WebAssembly when using C/C++.

Currently the lowering to wasm does not work when using externrefs when compiling without optimizations. Is that intended behavior?

Dec 14 2022, 7:17 AM · Restricted Project, Restricted Project, Restricted Project

Dec 1 2022

pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Ready for review.

Dec 1 2022, 7:01 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Ready for review.

Dec 1 2022, 6:59 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D139010: [clang][WebAssembly] Implement support for table types and builtins.

This is ready for review.
RFC has been published here: https://discourse.llvm.org/t/rfc-webassembly-reference-types-in-clang/66939

Dec 1 2022, 6:04 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D139010: [clang][WebAssembly] Implement support for table types and builtins.

Remove unnecessary attribute that lingered around after some refactoring.

Dec 1 2022, 6:03 AM · Restricted Project, Restricted Project, Restricted Project

Nov 30 2022

pmatos added reviewers for D139010: [clang][WebAssembly] Implement support for table types and builtins: tlively, asb.
Nov 30 2022, 5:59 AM · Restricted Project, Restricted Project, Restricted Project
pmatos added a comment to D139010: [clang][WebAssembly] Implement support for table types and builtins.

Subsumes D124162 and D123510.

Nov 30 2022, 5:59 AM · Restricted Project, Restricted Project, Restricted Project
pmatos planned changes to D139010: [clang][WebAssembly] Implement support for table types and builtins.

Please wait to review until the RFC (coming soon) is published.

Nov 30 2022, 5:57 AM · Restricted Project, Restricted Project, Restricted Project
pmatos requested review of D139010: [clang][WebAssembly] Implement support for table types and builtins.
Nov 30 2022, 5:55 AM · Restricted Project, Restricted Project, Restricted Project

Nov 23 2022

pmatos committed rGbab98395a103: [WebAssembly] Remove unnecessary GEP insts from table tests (authored by pmatos).
[WebAssembly] Remove unnecessary GEP insts from table tests
Nov 23 2022, 9:46 AM · Restricted Project, Restricted Project
pmatos closed D138569: [WebAssembly] Remove unnecessary GEP insts from table tests.
Nov 23 2022, 9:46 AM · Restricted Project, Restricted Project
pmatos requested review of D138569: [WebAssembly] Remove unnecessary GEP insts from table tests.
Nov 23 2022, 5:09 AM · Restricted Project, Restricted Project

Nov 7 2022

pmatos committed rGb293de988059: [Docs] Add my Office Hours (authored by pmatos).
[Docs] Add my Office Hours
Nov 7 2022, 10:02 PM · Restricted Project, Restricted Project

Nov 3 2022

pmatos added inline comments to D137295: WebAssembly: Remove MachineFunction reference from MFI.
Nov 3 2022, 12:01 AM · Restricted Project, Restricted Project

Oct 26 2022

pmatos planned changes to D128440: [WebAssembly] Initial support for reference type funcref in clang.
Oct 26 2022, 12:53 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D128440: [WebAssembly] Initial support for reference type funcref in clang.

Updated this revision on top of D122215.

Oct 26 2022, 12:52 AM · Restricted Project, Restricted Project, Restricted Project

Oct 25 2022

pmatos planned changes to D122215: [WebAssembly] Initial support for reference type externref in clang.

Whole integration plan still in the works, so marking as planning changes.

Oct 25 2022, 9:00 AM · Restricted Project, Restricted Project, Restricted Project
pmatos updated the diff for D122215: [WebAssembly] Initial support for reference type externref in clang.

Removed address space wasm_externref which is unnecessary with current design.

Oct 25 2022, 8:59 AM · Restricted Project, Restricted Project, Restricted Project

Oct 21 2022

pmatos committed rG39d8597927a5: [clang] Fix typo in error message (authored by pmatos).
[clang] Fix typo in error message
Oct 21 2022, 3:07 AM · Restricted Project, Restricted Project

Sep 27 2022

pmatos committed rG1bd1a4407058: [WebAssembly] Use intrinsics for table.get/set instructions (authored by pmatos).
[WebAssembly] Use intrinsics for table.get/set instructions
Sep 27 2022, 12:17 AM · Restricted Project, Restricted Project
pmatos closed D134436: [WebAssembly] Use intrinsics for table.get/set instructions.
Sep 27 2022, 12:17 AM · Restricted Project, Restricted Project