Page MenuHomePhabricator

rahmanl (Rahman Lavaee)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 30 2019, 2:02 PM (97 w, 5 d)

Recent Activity

Tue, Jun 1

rahmanl committed rG616ac1b961aa: [llvm-readobj] Print function names with `--bb-addr-map`. (authored by rahmanl).
[llvm-readobj] Print function names with `--bb-addr-map`.
Tue, Jun 1, 6:41 PM
rahmanl closed D102900: [llvm-readobj] Print function names with `--bb-addr-map`..
Tue, Jun 1, 6:41 PM · Restricted Project

Thu, May 27

rahmanl updated the diff for D102900: [llvm-readobj] Print function names with `--bb-addr-map`..

Remove unwanted duplicate variable definition.

Thu, May 27, 7:35 PM · Restricted Project
rahmanl updated the diff for D102900: [llvm-readobj] Print function names with `--bb-addr-map`..

Check the warning.

Thu, May 27, 6:54 PM · Restricted Project

Wed, May 26

rahmanl updated the diff for D102900: [llvm-readobj] Print function names with `--bb-addr-map`..
Wed, May 26, 2:23 PM · Restricted Project
rahmanl committed rG6505c630407c: [llvm-readobj] Optimize printing stack sizes to linear time. (authored by rahmanl).
[llvm-readobj] Optimize printing stack sizes to linear time.
Wed, May 26, 1:15 PM
rahmanl closed D103072: [llvm-readobj] Optimize printing stack sizes to linear time..
Wed, May 26, 1:14 PM · Restricted Project
rahmanl added a comment to D103072: [llvm-readobj] Optimize printing stack sizes to linear time..

Thanks for the review @jhenderson

Wed, May 26, 1:11 PM · Restricted Project
rahmanl updated the diff for D103072: [llvm-readobj] Optimize printing stack sizes to linear time..
  • Remove (void) line.
Wed, May 26, 1:10 PM · Restricted Project

Tue, May 25

rahmanl updated the summary of D103072: [llvm-readobj] Optimize printing stack sizes to linear time..
Tue, May 25, 2:31 PM · Restricted Project
rahmanl updated the diff for D103072: [llvm-readobj] Optimize printing stack sizes to linear time..

Rename map to AddressToIndexMap.

Tue, May 25, 2:29 PM · Restricted Project
rahmanl updated the diff for D103072: [llvm-readobj] Optimize printing stack sizes to linear time..

Address comments.

Tue, May 25, 2:25 PM · Restricted Project

Mon, May 24

rahmanl published D103072: [llvm-readobj] Optimize printing stack sizes to linear time. for review.
Mon, May 24, 9:55 PM · Restricted Project
rahmanl planned changes to D102900: [llvm-readobj] Print function names with `--bb-addr-map`..

Agree with tmsriram@ the quadratic behaviour needs to be addressed, though I think we should split it out as a separate change which can be committed first. That would make it easier for folks to review independently. Thanks!

Mon, May 24, 8:09 PM · Restricted Project
rahmanl updated the diff for D102900: [llvm-readobj] Print function names with `--bb-addr-map`..
  • Fix the map value type.
Mon, May 24, 8:02 PM · Restricted Project
rahmanl updated the diff for D102900: [llvm-readobj] Print function names with `--bb-addr-map`..
  • Reimplement symbol index lookup using a hash map. This reduces the 10 minute running time to only 3 seconds.
Mon, May 24, 7:48 PM · Restricted Project

Fri, May 21

rahmanl planned changes to D102900: [llvm-readobj] Print function names with `--bb-addr-map`..

The quadratic behavior leading to a 10 minute latency is too much. Binary search like you mentioned or just hash look up seems like it would drastically reduce the problem, could we bake it in the same change?

Fri, May 21, 7:59 PM · Restricted Project
rahmanl added a reviewer for D102900: [llvm-readobj] Print function names with `--bb-addr-map`.: grimar.
Fri, May 21, 7:31 PM · Restricted Project
rahmanl published D102900: [llvm-readobj] Print function names with `--bb-addr-map`. for review.
Fri, May 21, 7:31 PM · Restricted Project

Thu, May 20

rahmanl added a comment to D100944: [MC][ELF] Emit separate unique sections for different flags.

Does this work with -function-sections as well? If yes, would you please augment the test?

Thu, May 20, 6:47 PM · Restricted Project

May 7 2021

rahmanl updated the summary of D100808: Use Propeller ID instead of MBB IDs..
May 7 2021, 8:09 PM · Restricted Project
rahmanl published D100808: Use Propeller ID instead of MBB IDs. for review.
May 7 2021, 8:08 PM · Restricted Project

Apr 28 2021

rahmanl removed a reviewer for D101341: Initialize optional members of ELFYAML types.: rahmanl.
Apr 28 2021, 4:25 PM · Restricted Project
rahmanl added a comment to D101341: Initialize optional members of ELFYAML types..

BBAddrMap-related changes LGTM.

Apr 28 2021, 4:24 PM · Restricted Project

Apr 27 2021

rahmanl added a comment to D101311: Basic block sections for functions with implicit-section-name attribute.

LGTM with minor comments.

Apr 27 2021, 5:29 PM · Restricted Project

Apr 26 2021

rahmanl added inline comments to D101311: Basic block sections for functions with implicit-section-name attribute.
Apr 26 2021, 8:06 PM · Restricted Project

Apr 21 2021

rahmanl accepted D101004: [CodeGen] Do not split functions with attr "implicit-section-name"..
Apr 21 2021, 5:20 PM · Restricted Project

Mar 29 2021

rahmanl committed rG90c401cab634: [Propeller] Do not generate the BB address map for empty functions. (authored by rahmanl).
[Propeller] Do not generate the BB address map for empty functions.
Mar 29 2021, 8:15 PM
rahmanl closed D99395: [Propeller] Do not generate the BB address map for empty functions..
Mar 29 2021, 8:15 PM · Restricted Project

Mar 25 2021

rahmanl added inline comments to D99395: [Propeller] Do not generate the BB address map for empty functions..
Mar 25 2021, 7:40 PM · Restricted Project
rahmanl added inline comments to D99395: [Propeller] Do not generate the BB address map for empty functions..
Mar 25 2021, 7:38 PM · Restricted Project
rahmanl requested review of D99395: [Propeller] Do not generate the BB address map for empty functions..
Mar 25 2021, 6:46 PM · Restricted Project
rahmanl committed rGcf62b6d3b223: Add missing 'CHECK' prefix to basic block labels test. (authored by rahmanl).
Add missing 'CHECK' prefix to basic block labels test.
Mar 25 2021, 4:42 PM
rahmanl closed D99316: Add missing 'CHECK' prefix to basic block labels test..
Mar 25 2021, 4:42 PM · Restricted Project

Mar 24 2021

rahmanl requested review of D99316: Add missing 'CHECK' prefix to basic block labels test..
Mar 24 2021, 10:16 PM · Restricted Project

Mar 22 2021

rahmanl committed rG949abf7d6afb: [llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB… (authored by rahmanl).
[llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB…
Mar 22 2021, 9:39 PM
rahmanl closed D96918: [llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB-Address-Map section..
Mar 22 2021, 9:39 PM · Restricted Project

Mar 16 2021

rahmanl added a reviewer for D96918: [llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB-Address-Map section.: tmsriram.

Thanks for the quick review.
@tmsriram Would you please review the AsmPrinter.cpp change?

Mar 16 2021, 12:47 AM · Restricted Project
rahmanl updated the diff for D96918: [llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB-Address-Map section..
  • Fix typo.
  • Rebase.
Mar 16 2021, 12:46 AM · Restricted Project

Mar 10 2021

rahmanl published D96918: [llvm-readelf, propeller] Add fallthrough bit to basic block metadata in BB-Address-Map section. for review.
Mar 10 2021, 5:58 PM · Restricted Project

Mar 8 2021

rahmanl added a comment to rGc245c21c436b: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Checked in https://reviews.llvm.org/rGc22d18b7e81e6b543f549980d3328ab9a18a9c34 to fix the buildbot failure.

Mar 8 2021, 4:50 PM
rahmanl committed rGc22d18b7e81e: Read NumBlocks as uint64_t. (authored by rahmanl).
Read NumBlocks as uint64_t.
Mar 8 2021, 4:48 PM
rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Apologies for the delay - I've missed most of this week due to illness. LGTM.

Mar 8 2021, 4:21 PM · Restricted Project
rahmanl committed rGc245c21c436b: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map. (authored by rahmanl).
[llvm-readelf] Support dumping the BB address map section with --bb-addr-map.
Mar 8 2021, 4:20 PM
rahmanl closed D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Mar 8 2021, 4:20 PM · Restricted Project

Mar 4 2021

rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

@jhenderson Is this good now? Thanks for the review.

Mar 4 2021, 5:09 PM · Restricted Project

Feb 26 2021

rahmanl added inline comments to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Feb 26 2021, 1:43 AM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Typos and edge-cases.
Feb 26 2021, 1:43 AM · Restricted Project

Feb 22 2021

rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

I'd like to do another review pass of the testing before signing off on this, but generally, this is looking good.

Feb 22 2021, 7:22 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Fix typos.

Feb 22 2021, 7:17 PM · Restricted Project
rahmanl committed rG9f527086609e: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field. (authored by rahmanl).
[obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field.
Feb 22 2021, 6:09 PM
rahmanl closed D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
Feb 22 2021, 6:09 PM · Restricted Project
rahmanl updated the diff for D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
  • Typos and formatting.
Feb 22 2021, 6:02 PM · Restricted Project
rahmanl updated the diff for D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
  • Typos and formatting.
Feb 22 2021, 6:01 PM · Restricted Project
rahmanl added a comment to D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..

It looks like you somehow pushed an older version of this change? Several of the typos/minor changes you fixed in previous iterations have been undone. Please take a look and fix accordingly.

I used this link to spot differences that look bad to me: https://reviews.llvm.org/D96831?vs=324449&id=324451#toc

Feb 22 2021, 5:52 PM · Restricted Project
rahmanl updated the diff for D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
  • Typos and formatting.
Feb 22 2021, 5:50 PM · Restricted Project
rahmanl reopened D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
Feb 22 2021, 5:46 PM · Restricted Project

Feb 17 2021

rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Decode the Metadata field consistently with the encoding in AsmPrinter::getBBAddrMapMetadata.
Feb 17 2021, 5:46 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Decode the Metadata field consistently with the encoding in AsmPrinter::getBBAddrMapMetadata.
Feb 17 2021, 5:38 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Use Cur instead of cursor in the comment.
Feb 17 2021, 4:13 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Use the NumBlocks field in the unit test, instead of encoding by hand.
  • Change the type of 'NumBlocks' to uint64_t so we can write the invalid unit test.
Feb 17 2021, 4:09 PM · Restricted Project
rahmanl committed rG0252e6ead192: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field. (authored by rahmanl).
[obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field.
Feb 17 2021, 3:46 PM
rahmanl closed D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
Feb 17 2021, 3:45 PM · Restricted Project
rahmanl updated the diff for D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
  • rebase.
Feb 17 2021, 3:38 PM · Restricted Project
rahmanl updated the diff for D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
  • Typos and format.
Feb 17 2021, 3:35 PM · Restricted Project

Feb 16 2021

rahmanl planned changes to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Feb 16 2021, 10:10 PM · Restricted Project
rahmanl added inline comments to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Feb 16 2021, 7:01 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Use joinErrors to join ULEBSizeErr and the cursor error.
Feb 16 2021, 7:00 PM · Restricted Project
rahmanl requested review of D96831: [obj2yaml,yaml2obj] Add NumBlocks to the BBAddrMapEntry yaml field..
Feb 16 2021, 6:56 PM · Restricted Project

Feb 12 2021

rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Remove errs() lines.
Feb 12 2021, 7:45 PM · Restricted Project
rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Thanks for the comments @jhenderson

Feb 12 2021, 5:07 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Handle @jhenderson's comments.
  • Add a test for error handling when NumBlocks is out-of-range.
Feb 12 2021, 5:05 PM · Restricted Project

Feb 10 2021

rahmanl accepted D96372: [CodeGen] Split out cold exception handling pads..
Feb 10 2021, 6:32 PM · Restricted Project
rahmanl added a comment to D96372: [CodeGen] Split out cold exception handling pads..

Thanks.
LGTM with minor nits.

Feb 10 2021, 4:13 PM · Restricted Project

Feb 9 2021

rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Add a dummy SHT_PROGBITS section in the test for further test coverage.
Feb 9 2021, 6:28 PM · Restricted Project
rahmanl added inline comments to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Feb 9 2021, 6:14 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Support dumping multiple BB address map sections.
  • Add a unit test to check that we don't generate an unhandled error.
  • Keep only one error path in the lit test.
Feb 9 2021, 6:13 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Support dumping multiple BB address map sections.
  • Address other @jhenderson's comments.
Feb 9 2021, 5:53 PM · Restricted Project
rahmanl added a comment to D96372: [CodeGen] Split out cold exception handling pads..

Wouldn't this cause an error when we have both hot and cold eh pads? We must ensure that same section id is assigned to all landing pads (please refer to BasicBlockSections.cpp::assignSections.

Feb 9 2021, 4:43 PM · Restricted Project

Feb 3 2021

rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Can the output be consumed programmatically? (i.e. is it for example valid yaml or json)

Yes, but it's not yaml or json. The output is std::vector<Elf_BBAddrMap> and it is accessible via the library call: ELFFile::decodeBBAddrMap(Elf_Shdr&) (However, the user needs to find the BB address map section).

I meant the textual output. It's very close to json - the benefit of it actually being json is that one could script from llvm-readobj output.

I see. You're right. The output is similar to json. This is produced by ScopedPrinter. The relevant sources do not point out similarity with JSON at all. Maybe @jhenderson can answer this.

The other question - looking at the textual output, could it go the next step and produce the association bbaddress - name? My thinking is that the user of the output would find that more valuable (quick scripting, for instance)

This is a good point. Currently, the bb-address-map is only generated using -fbasic-block-sections=labels which also renumbers the basic block in ascending. So we can say that the MBB number associated with the i'th BB entry is i.

Feb 3 2021, 11:12 PM · Restricted Project
rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Can the output be consumed programmatically? (i.e. is it for example valid yaml or json)

Feb 3 2021, 10:22 PM · Restricted Project
rahmanl updated subscribers of D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Feb 3 2021, 7:21 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Add command line guides for llvm-readobj and llvm-readelf.
Feb 3 2021, 4:39 PM · Restricted Project
rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Thanks @jhenderson. Your explanation was very helpful. Would you please advise on whether I should keep the error paths in the lit tests, as is?

Feb 3 2021, 3:41 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Move error path tests under libObject unittests.
Feb 3 2021, 3:33 PM · Restricted Project

Feb 1 2021

rahmanl added inline comments to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Feb 1 2021, 7:55 PM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
  • Decode ULEB128 as uint64_t and then cast to uint32_t. Report error if over the limit.
Feb 1 2021, 7:54 PM · Restricted Project
rahmanl committed rGf1ff6d210a5f: [obj2yaml, yaml2obj] Use Hex64 for BBAddressMap fields. (authored by rahmanl).
[obj2yaml, yaml2obj] Use Hex64 for BBAddressMap fields.
Feb 1 2021, 3:38 PM
rahmanl closed D95767: [obj2yaml, yaml2obj] Use Hex64 for BBAddressMap fields..
Feb 1 2021, 3:38 PM · Restricted Project

Jan 31 2021

rahmanl planned changes to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Jan 31 2021, 3:34 PM · Restricted Project
rahmanl added inline comments to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..
Jan 31 2021, 3:34 PM · Restricted Project
rahmanl published D95767: [obj2yaml, yaml2obj] Use Hex64 for BBAddressMap fields. for review.
Jan 31 2021, 3:31 PM · Restricted Project

Jan 29 2021

rahmanl added a comment to D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Thanks for the comments @grimar

Jan 29 2021, 1:15 AM · Restricted Project
rahmanl updated the diff for D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map..

Test the 32-bit case.
Address @grimar's comments.

Jan 29 2021, 1:13 AM · Restricted Project
rahmanl added a comment to D95158: Use DataExtractor to decode SLEB128 in android_relas..

I am surprised this patch hasn't been automatically updated to show the committed status after I pushed it (https://github.com/llvm/llvm-project/commit/3ca502a7d60787abe14db1fa541950ff79c7585b). Maybe I should've used arc land instead of git push?

Probably because you've used "Differential Revision". The latter word should be "revision"

No, it definitely should be Revision (upper-case).

Seems there is no difference what to use then. I believe I always used lower-case. E.g rG029644ee510792120f1c0daf32989b401d4ce871.

Jan 29 2021, 12:54 AM · Restricted Project
rahmanl closed D95158: Use DataExtractor to decode SLEB128 in android_relas..

Closed [manually] by commit https://github.com/llvm/llvm-project/commit/3ca502a7d60787abe14db1fa541950ff79c7585b

Jan 29 2021, 12:52 AM · Restricted Project

Jan 28 2021

rahmanl added a comment to D95158: Use DataExtractor to decode SLEB128 in android_relas..

I am surprised this patch hasn't been automatically updated to show the committed status after I pushed it (https://github.com/llvm/llvm-project/commit/3ca502a7d60787abe14db1fa541950ff79c7585b). Maybe I should've used arc land instead of git push?

Jan 28 2021, 4:47 PM · Restricted Project
rahmanl published D95511: [llvm-readelf] Support dumping the BB address map section with --bb-addr-map. for review.
Jan 28 2021, 2:16 AM · Restricted Project
rahmanl added a comment to D95158: Use DataExtractor to decode SLEB128 in android_relas..

@jhenderson Is this ready to land?

Sorry, I got caught up with things yesterday and didn't get to all the review requests I had to field.

I guess the test case I'm thinking of is showing that the malformed group reloc count value means we don't get the "relocation group unexpectedly large" error. I don't feel strongly enough about this though to push for more testing if you don't want to add it.

Jan 28 2021, 1:29 AM · Restricted Project

Jan 26 2021

rahmanl added a comment to D95158: Use DataExtractor to decode SLEB128 in android_relas..

@jhenderson Is this ready to land?

Jan 26 2021, 11:58 PM · Restricted Project