Page MenuHomePhabricator

plotfi (Puyan Lotfi)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 30 2017, 10:52 AM (175 w, 6 d)

Recent Activity

Wed, Mar 31

plotfi added inline comments to D99399: [elfabi] Prepare llvm-elfabi for elfabi/ifs merging..
Wed, Mar 31, 5:16 PM · Restricted Project
plotfi added inline comments to D99399: [elfabi] Prepare llvm-elfabi for elfabi/ifs merging..
Wed, Mar 31, 5:07 PM · Restricted Project
plotfi added inline comments to D99399: [elfabi] Prepare llvm-elfabi for elfabi/ifs merging..
Wed, Mar 31, 4:13 PM · Restricted Project

Tue, Mar 30

plotfi added inline comments to D99399: [elfabi] Prepare llvm-elfabi for elfabi/ifs merging..
Tue, Mar 30, 6:02 PM · Restricted Project

Thu, Mar 25

plotfi added a comment to D99399: [elfabi] Prepare llvm-elfabi for elfabi/ifs merging..

I will take another look over this commit in the morning. Overall looks good.

Thu, Mar 25, 10:37 PM · Restricted Project

Mar 3 2021

plotfi added a comment to D97878: [DirectoryWatcher] Increase timeout to make test less flaky.

@jkorous thoughts?

Mar 3 2021, 7:18 PM · Restricted Project
plotfi accepted D97878: [DirectoryWatcher] Increase timeout to make test less flaky.

This makes sense to me. I approve. Can we move the 3/60 seconds number to a const int value set somewhere higher up in the file as a global with a comment explaining this as well?

Mar 3 2021, 7:17 PM · Restricted Project

Feb 16 2021

plotfi accepted D94461: [llvm-ifs] Add option to use InterfaceStub library.

If @compnerd has no gripes go ahead and land. LGTM.
Before landing, please make sure to run the check-clang tests as well because the interface stubs generation on the clang driver side invokes llvm-ifs.

Feb 16 2021, 12:52 PM · Restricted Project

Feb 1 2021

plotfi added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.

Ping? Haven't seen any chatter in a while. Anything new here? I don't want to hold you folks up.

Feb 1 2021, 1:52 PM · Restricted Project

Jan 24 2021

plotfi added a comment to D95321: [NFC] Fixing build warning with llvm-mca.

@wolfgangp I get this warning on macOS. I noticed it wasn't fixed in https://github.com/llvm/llvm-project/commit/c6e8f81410a2942b5abd112aa6e468268e01d946#diff-67f7be4aff998787c9c4efcb95e5d0dc225e1dcd37b9b005a3db5493f02efdc3 so I posted this small diff.

Jan 24 2021, 4:13 PM · Restricted Project
plotfi requested review of D95321: [NFC] Fixing build warning with llvm-mca.
Jan 24 2021, 4:12 PM · Restricted Project

Jan 20 2021

plotfi accepted D92532: [IRSimilarity] Don't copy the Mapper for createCandidatesFromSuffixTree.

Is this still open? Seems good to go.

Jan 20 2021, 4:42 PM · Restricted Project

Jan 12 2021

plotfi added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.

You mean use armv7---elf as a triple? While that is possible, keep in mind that it might change the ABI of the generated interfaces. While it is unlikely to matter as the ifso cannot be used at runtime, if the linker attempts to do something like symbolic resolution of ABI dependent specialization (e.g. strcmp.eabi vs strcmp where the latter is generic), that could matter. However, adding support to explicitly override the encoded triple based on the user's input is reasonable (though might deserve a warning that the triple is being overridden).

Jan 12 2021, 4:25 PM · Restricted Project
plotfi added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.

The full triple is needed in some cases: armv7-unknown-linux-gnueabi vs armv7-unknown-linux-gnueabihf vs armv7-unknown-linux-eabihf vs armv7-unknown-linux-eabi are all different. Additionally, there is nothing that prevents you from doing something like: armv7-unknown-linux-gnueabihf-coff or armv7-unknown-linux-gnueabihf-macho to generate COFF or MachO object files that are reading in additional bits of ABI information and the libc from the target triple. I really think that preserving the target triple is best.

Jan 12 2021, 4:16 PM · Restricted Project
plotfi added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.
  1. I think for unification, the first thing would be unifying the text abi file format. Currently, the YAML format used by ifs is very similar to the one used in InterfaceStub(elfabi), however there are not compatible. One thing is that ifs embeds llvm triples in the text ifs file while elfabi does not do that. Elfabi get platform and endianness information from command line instead of getting them from the text stub file. We did that because there are use cases that we generate ELF stubs for multiple platforms using a single set of text abi files. Is there a specific reason why ifs text files require llvm triples? Is it feasible to make llvm-ifs to get the platform information from the command line options?

The triple-ness was added because originally IFS was intended to be a tool that the clang driver invokes. The idea was that you build some project with IFS enabled and you automatically get the stubs for shipping or for CI purposes to track what new exposure was done in recent builds of said project. I think it would be ok to add a flag to override the triple if that isn't there already. @compnerd
thoughts?

I meant to add, as part of llvm-ifs being invoked by clang the idea was that clang would just forward its triple and llvm-ifs would decide what to do with it because we wanted the ifs format to be kinda platform agnostic but we wanted llvm-ifs to potentially be able to generate stubs for multiple platforms in the future (like MS .libs and tbds etc too).

Would you need a full triple in that case? Other binary tools like linkers doesn't use a full triple either, they use just e_machine and e_ident. Would that be sufficient?

Jan 12 2021, 10:37 AM · Restricted Project

Jan 11 2021

plotfi added inline comments to D94461: [llvm-ifs] Add option to use InterfaceStub library.
Jan 11 2021, 7:57 PM · Restricted Project
plotfi added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.
  1. I think for unification, the first thing would be unifying the text abi file format. Currently, the YAML format used by ifs is very similar to the one used in InterfaceStub(elfabi), however there are not compatible. One thing is that ifs embeds llvm triples in the text ifs file while elfabi does not do that. Elfabi get platform and endianness information from command line instead of getting them from the text stub file. We did that because there are use cases that we generate ELF stubs for multiple platforms using a single set of text abi files. Is there a specific reason why ifs text files require llvm triples? Is it feasible to make llvm-ifs to get the platform information from the command line options?

The triple-ness was added because originally IFS was intended to be a tool that the clang driver invokes. The idea was that you build some project with IFS enabled and you automatically get the stubs for shipping or for CI purposes to track what new exposure was done in recent builds of said project. I think it would be ok to add a flag to override the triple if that isn't there already. @compnerd
thoughts?

Jan 11 2021, 7:45 PM · Restricted Project
plotfi added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.
  1. I think for unification, the first thing would be unifying the text abi file format. Currently, the YAML format used by ifs is very similar to the one used in InterfaceStub(elfabi), however there are not compatible. One thing is that ifs embeds llvm triples in the text ifs file while elfabi does not do that. Elfabi get platform and endianness information from command line instead of getting them from the text stub file. We did that because there are use cases that we generate ELF stubs for multiple platforms using a single set of text abi files. Is there a specific reason why ifs text files require llvm triples? Is it feasible to make llvm-ifs to get the platform information from the command line options?
Jan 11 2021, 7:43 PM · Restricted Project
plotfi added a reviewer for D94461: [llvm-ifs] Add option to use InterfaceStub library: compnerd.
Jan 11 2021, 7:34 PM · Restricted Project

Oct 27 2020

plotfi added inline comments to D88180: [RFC] StableHashTree Implementation..
Oct 27 2020, 1:25 PM · Restricted Project
plotfi retitled D88180: [RFC] StableHashTree Implementation. from [RFC] HashTree and MachineOutliner HashTree Serialization for cross module data sharing. to [RFC] StableHashTree Implementation..
Oct 27 2020, 1:17 PM · Restricted Project
plotfi updated the diff for D88180: [RFC] StableHashTree Implementation..

Updated based on @paquette's feedback. This only includes the StableHashTree data structure and a unit test.

Oct 27 2020, 1:17 PM · Restricted Project

Oct 23 2020

plotfi added a comment to D89432: [llvm-elfabi] Emit ELF .dynsym and .dynamic sections.

Nice. Will you folks be updating llvm-ifs to use this support instead of yaml2obj soon? If so add me to the review, I will be happy to take a look.

Oct 23 2020, 10:46 AM · Restricted Project

Oct 20 2020

plotfi added a comment to D89764: [llvm] Fix ODRViolations for VersionTuple YAML specializations NFC.

Thanks for fixing this @cishida!

Oct 20 2020, 4:51 PM · Restricted Project
plotfi added a comment to D89764: [llvm] Fix ODRViolations for VersionTuple YAML specializations NFC.

I think I am overall ok with this for now until the TBE folks post some more patches to integrate ifs and tbe.

Oct 20 2020, 1:02 PM · Restricted Project

Oct 7 2020

plotfi added a comment to D57265: [PM/CC1] Add -f[no-]split-cold-code CC1 options to toggle splitting.

@vsk any update on this? Is there anything we can do to help in landing this patch in llvm-project/main?

Oct 7 2020, 2:08 PM · Restricted Project, Restricted Project

Oct 1 2020

plotfi added a comment to D88666: DirectoryWatcher: add an implementation for Windows.

Overall looks good.

Oct 1 2020, 9:41 AM · Restricted Project

Sep 24 2020

plotfi updated the diff for D88180: [RFC] StableHashTree Implementation..

comments added

Sep 24 2020, 10:28 PM · Restricted Project
plotfi updated the diff for D88180: [RFC] StableHashTree Implementation..

clang-tidy

Sep 24 2020, 10:15 PM · Restricted Project
plotfi updated the diff for D88180: [RFC] StableHashTree Implementation..

spelling and grammar

Sep 24 2020, 6:32 PM · Restricted Project
plotfi updated the diff for D88180: [RFC] StableHashTree Implementation..

Cleaning up patch to be easier to understand.

Sep 24 2020, 6:20 PM · Restricted Project
plotfi updated the diff for D88180: [RFC] StableHashTree Implementation..
Sep 24 2020, 4:34 PM · Restricted Project
plotfi added a comment to D76570: [AArch64] Homogeneous Prolog and Epilog for Size Optimization.

@sdesmalen @efriedma @dmgreen Hi Sander, Eli, Dave. Would any of you have some time to help review this Prolog Epilog Size optimization patch? Much appreciated if you do. Me and @kyulee would be available to chat on IRC or discord about it for more info.

Sep 24 2020, 12:54 PM · Restricted Project
plotfi added reviewers for D76570: [AArch64] Homogeneous Prolog and Epilog for Size Optimization: sdesmalen, efriedma.
Sep 24 2020, 12:51 PM · Restricted Project

Sep 23 2020

plotfi added a comment to D88180: [RFC] StableHashTree Implementation..

@thegameg: @paquette tells be you might have some ideas on a better format than this json business going on here (based on work you've done on remarks). What do you think?

Sep 23 2020, 1:26 PM · Restricted Project
plotfi requested review of D88180: [RFC] StableHashTree Implementation..
Sep 23 2020, 1:20 PM · Restricted Project

Sep 18 2020

plotfi added inline comments to D86977: [IRSim][IROutliner] Limit to extracting regions that only require inputs.
Sep 18 2020, 11:28 AM · Restricted Project
plotfi added inline comments to D86977: [IRSim][IROutliner] Limit to extracting regions that only require inputs.
Sep 18 2020, 10:50 AM · Restricted Project
plotfi added a reviewer for D86977: [IRSim][IROutliner] Limit to extracting regions that only require inputs: plotfi.
Sep 18 2020, 10:44 AM · Restricted Project

Sep 15 2020

plotfi added inline comments to D86968: [IRSim] Adding IR Instruction Mapper.
Sep 15 2020, 11:48 AM · Restricted Project
plotfi added inline comments to D86968: [IRSim] Adding IR Instruction Mapper.
Sep 15 2020, 11:41 AM · Restricted Project
plotfi added inline comments to D86968: [IRSim] Adding IR Instruction Mapper.
Sep 15 2020, 10:51 AM · Restricted Project
plotfi added inline comments to D86968: [IRSim] Adding IR Instruction Mapper.
Sep 15 2020, 10:31 AM · Restricted Project

Sep 14 2020

plotfi added a reviewer for D86968: [IRSim] Adding IR Instruction Mapper: plotfi.
Sep 14 2020, 9:48 AM · Restricted Project

Sep 8 2020

plotfi committed rGefc17c4bc668: [NFC] Fixing a gcc compiler warning. (authored by plotfi).
[NFC] Fixing a gcc compiler warning.
Sep 8 2020, 4:45 PM

Sep 3 2020

plotfi added a comment to D66029: llvm-canon.

@mpaszkowski ping

Sep 3 2020, 11:42 PM · Restricted Project
plotfi added a comment to D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

I've updated the diff to reflect the alternate non-wrapper exposure. This way requires the sanitizing of the exported objc_direct method name.

Sep 3 2020, 7:39 PM · Restricted Project
plotfi updated the diff for D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 3 2020, 10:48 AM · Restricted Project
plotfi added a comment to D86952: [MIRVRegNamer] MachineInstr StableHashing..

Oh wait the tests already test what I was concerned about. LGTM with minor nits.

(although decoupling the tests from mir-canon would be nice, since this is supposed to be standalone)

Sep 3 2020, 10:26 AM · Restricted Project
plotfi added a comment to D86952: [MIRVRegNamer] MachineInstr StableHashing..

Is there any way to test the hash itself on certain instructions?

e.g. verify that two instructions with different address spaces get a different hash?

Sep 3 2020, 10:06 AM · Restricted Project
plotfi updated the diff for D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 3 2020, 9:38 AM · Restricted Project
plotfi added inline comments to D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 3 2020, 9:37 AM · Restricted Project
plotfi added inline comments to D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 3 2020, 9:23 AM · Restricted Project
plotfi updated the diff for D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 3 2020, 9:22 AM · Restricted Project

Sep 2 2020

plotfi updated the diff for D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

I've updated the diff to reflect the alternate non-wrapper exposure. This way requires the sanitizing of the exported objc_direct method name.

Sep 2 2020, 6:18 PM · Restricted Project

Sep 1 2020

plotfi added a reviewer for D86952: [MIRVRegNamer] MachineInstr StableHashing.: manmanren.
Sep 1 2020, 3:20 PM · Restricted Project
plotfi updated the diff for D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 1 2020, 12:37 PM · Restricted Project
plotfi updated subscribers of D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 1 2020, 11:43 AM · Restricted Project
plotfi updated the diff for D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 1 2020, 11:30 AM · Restricted Project
plotfi requested review of D86952: [MIRVRegNamer] MachineInstr StableHashing..
Sep 1 2020, 8:34 AM · Restricted Project

Aug 29 2020

plotfi updated the summary of D86846: [NFC] Adding pythonenv* to .gitignore.
Aug 29 2020, 8:34 PM · Restricted Project
plotfi requested review of D86846: [NFC] Adding pythonenv* to .gitignore.
Aug 29 2020, 8:27 PM · Restricted Project

Aug 26 2020

plotfi added inline comments to D86658: [libfuzzer] Reduce default verbosity when printing large mutation sequences.
Aug 26 2020, 1:54 PM · Restricted Project
plotfi added inline comments to D86658: [libfuzzer] Reduce default verbosity when printing large mutation sequences.
Aug 26 2020, 1:53 PM · Restricted Project
plotfi added a comment to D86427: Fix some spelling errors.

@YangZhihui landed at https://github.com/llvm/llvm-project/commit/f22d27624b6532a5542b283de9ce586c72c6b846

Aug 26 2020, 2:00 AM · Restricted Project
plotfi committed rGf22d27624b65: [NFC] Fix some spelling errors in clang Driver Options.td (authored by YangZhihui).
[NFC] Fix some spelling errors in clang Driver Options.td
Aug 26 2020, 1:59 AM
plotfi closed D86427: Fix some spelling errors.
Aug 26 2020, 1:59 AM · Restricted Project

Aug 25 2020

plotfi added a comment to D86427: Fix some spelling errors.

how can I add the Author property in the patch
Thanks

Aug 25 2020, 6:33 PM · Restricted Project
plotfi added a comment to D86427: Fix some spelling errors.

Thanks, but I don't have commit access

Aug 25 2020, 2:36 AM · Restricted Project

Aug 23 2020

plotfi accepted D86427: Fix some spelling errors.

LGTM. Go ahead and land it.

Aug 23 2020, 9:50 PM · Restricted Project

Aug 20 2020

plotfi added a comment to D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

@lanza I did it as a CodeGen option for now because we don't want anything like this to be the default until the ABI is fleshed out.
I think one danger in altering the name of the function to some extent is you dont want to clash potentially with user defined C functions.

Aug 20 2020, 3:16 PM · Restricted Project

Aug 19 2020

plotfi committed rG7a028fe70295: Force Remove Attribute (authored by Kyungwoo Lee <kyulee.llvm@gmail.com>).
Force Remove Attribute
Aug 19 2020, 2:31 PM
plotfi closed D85586: Force Remove Attribute.
Aug 19 2020, 2:30 PM · Restricted Project
plotfi accepted D85586: Force Remove Attribute.

Ok, LGTM. I will land for you, but in your name on git. Thanks for this patch @kyulee.

Aug 19 2020, 12:29 PM · Restricted Project

Aug 18 2020

plotfi added a reviewer for D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods.: kyulee.
Aug 18 2020, 8:59 PM · Restricted Project
plotfi added a comment to D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

I think that, if we want to do this, we need to think carefully about what exactly we want the ABI to be.

Aug 18 2020, 8:59 PM · Restricted Project

Aug 17 2020

plotfi updated the diff for D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

change for clang-tidy and clang-format.

Aug 17 2020, 1:59 PM · Restricted Project
plotfi added a comment to D85586: Force Remove Attribute.

I think this LGTM. @kyulee are there any other tests that use this flag? Can you add a test that both adds and also removes some different attributes. Also a test that adds and removes he same attribute too would be good.

Aug 17 2020, 1:45 PM · Restricted Project
plotfi added a comment to D72770: Add matrix types extension tests ..

Good stuff. Thanks for replying so quickly @fhahn :-)

Aug 17 2020, 1:26 PM · Restricted Project
plotfi closed D85569: [NVPTX] Fix typo in lit test.

landed at https://github.com/llvm/llvm-project/commit/33490acf241a487028bfee73c0bd9e8026fcdb5c

Aug 17 2020, 1:05 PM · Restricted Project
plotfi committed rG33490acf241a: [NVPTX] Fix typo in lit test (authored by ellis).
[NVPTX] Fix typo in lit test
Aug 17 2020, 1:02 PM
plotfi added a reviewer for D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods.: lanza.
Aug 17 2020, 12:43 AM · Restricted Project
plotfi updated the diff for D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..
Aug 17 2020, 12:42 AM · Restricted Project
plotfi requested review of D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..
Aug 17 2020, 12:40 AM · Restricted Project

Aug 15 2020

plotfi added a comment to D72770: Add matrix types extension tests ..

@fhahn I ran into an llvm_unreachable when building matrix-types-spec.cpp as part of an llvm-test-suite build using -Oz with -flto=thin. I reduced the IR that hit the unreachable to:

Aug 15 2020, 2:51 PM · Restricted Project

Aug 14 2020

plotfi abandoned D11244: New ADT: SortedVector .
Aug 14 2020, 3:53 PM
plotfi commandeered D11244: New ADT: SortedVector .
Aug 14 2020, 3:53 PM
plotfi added a comment to D85586: Force Remove Attribute.

Please Update Diff.

Aug 14 2020, 12:09 AM · Restricted Project
plotfi abandoned D83464: [MachineOutliner][AArch64] Fix for noreturn functions.
Aug 14 2020, 12:09 AM · Restricted Project
plotfi commandeered D83464: [MachineOutliner][AArch64] Fix for noreturn functions.
Aug 14 2020, 12:08 AM · Restricted Project

Aug 11 2020

plotfi updated subscribers of D85678: [elfabi] Move elfabi related code to InterfaceStub library.

I'd be fine with InterfaceStub as a name for the library.

Aug 11 2020, 11:05 PM · Restricted Project
plotfi added a comment to D85678: [elfabi] Move elfabi related code to InterfaceStub library.

I would like to improve llvm-ifs tool on ELF object handling. Right now it uses yaml2obj which is not robust.

How is it not robust?

We contacted plotfi and learned that llvm-ifs does not work well in production when it is used for elf stub generation. We suggested to improve llvm-ifs tools and unify it with llvm-elfabi tool as they share many similarities. llvm-elfabi has its own elf handler, most of its code have not yet landed and we will try our best to make it to production grade. This CL is the first step to strip elf handler away from llvm-elfabi and put it into a standalone library so we can continue work on it and make it shared by both tools without breaking anything.

Aug 11 2020, 11:01 PM · Restricted Project
plotfi accepted D85793: [NFC] Factor out hasForceAttributes.

LGTM

Aug 11 2020, 3:47 PM · Restricted Project
plotfi added inline comments to D85586: Force Remove Attribute.
Aug 11 2020, 11:55 AM · Restricted Project

Aug 10 2020

plotfi added inline comments to D85586: Force Remove Attribute.
Aug 10 2020, 6:51 PM · Restricted Project
plotfi added a comment to D85586: Force Remove Attribute.

Overall this change makes sense. I don't see why we shouldn't have this ability to remove attrs.

Aug 10 2020, 6:49 PM · Restricted Project
plotfi closed D83923: [MachineOutliner][AArch64] WA for cases where AArch64 Outliner needs to do more than one stack fixup..

Closing, cause phab doesn't seem to be auto-closing.
Landed at https://github.com/llvm/llvm-project/commit/7bc03f55539f7f081daea5363f2e4845b2e75f57

Aug 10 2020, 2:08 PM · Restricted Project
plotfi committed rG7bc03f55539f: [MachineOutliner][AArch64] WA for multiple stack fixup cases in MachineOutliner. (authored by plotfi).
[MachineOutliner][AArch64] WA for multiple stack fixup cases in MachineOutliner.
Aug 10 2020, 12:44 PM
plotfi updated the diff for D83923: [MachineOutliner][AArch64] WA for cases where AArch64 Outliner needs to do more than one stack fixup..
Aug 10 2020, 10:51 AM · Restricted Project
plotfi added inline comments to D83923: [MachineOutliner][AArch64] WA for cases where AArch64 Outliner needs to do more than one stack fixup..
Aug 10 2020, 10:49 AM · Restricted Project