Page MenuHomePhabricator

ychen (Yuanfang Chen)
Engineering

Projects

User Details

User Since
Nov 19 2013, 9:02 PM (295 w, 1 d)

Recent Activity

Mon, Jul 15

ychen updated the diff for D56353: Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with '-mframe-pointer'.
  • update
Mon, Jul 15, 7:30 PM · Restricted Project
ychen added inline comments to D64779: [llvm-objdump] Emit warning if --start-address/--stop-address specify range outside file's address range..
Mon, Jul 15, 7:22 PM · Restricted Project
ychen updated the diff for D64779: [llvm-objdump] Emit warning if --start-address/--stop-address specify range outside file's address range..
  • update
Mon, Jul 15, 7:20 PM · Restricted Project
ychen updated the summary of D64779: [llvm-objdump] Emit warning if --start-address/--stop-address specify range outside file's address range..
Mon, Jul 15, 7:04 PM · Restricted Project
ychen created D64779: [llvm-objdump] Emit warning if --start-address/--stop-address specify range outside file's address range..
Mon, Jul 15, 3:57 PM · Restricted Project
ychen committed rGa28dcf693d15: [llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files. (authored by ychen).
[llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files.
Mon, Jul 15, 3:54 PM
ychen updated the diff for D56353: Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with '-mframe-pointer'.
  • Make FramePointerKind enum class.
  • Replace two if-else-if blocks to switch statements.
Mon, Jul 15, 3:27 PM · Restricted Project
ychen added inline comments to D56353: Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with '-mframe-pointer'.
Mon, Jul 15, 3:24 PM · Restricted Project
ychen added inline comments to D64674: [llvm-readobj] Refactor dynamic string table indexing into a function..
Mon, Jul 15, 9:32 AM · Restricted Project
ychen updated the diff for D64674: [llvm-readobj] Refactor dynamic string table indexing into a function..
  • Address reviewer's comments.
Mon, Jul 15, 9:32 AM · Restricted Project
ychen retitled D64674: [llvm-readobj] Refactor dynamic string table indexing into a function. from [NFC][llvm-readobj] Refactor dynamic string table indexing into a function. to [llvm-readobj] Refactor dynamic string table indexing into a function..
Mon, Jul 15, 9:30 AM · Restricted Project

Sun, Jul 14

ychen added a comment to D64674: [llvm-readobj] Refactor dynamic string table indexing into a function..

Do you find another use case of printDynamicString? If yes, can you name it?

Sun, Jul 14, 6:36 PM · Restricted Project
ychen updated the diff for D64674: [llvm-readobj] Refactor dynamic string table indexing into a function..
  • Replace printDynamicString with getDynamicString.
  • Change tests accordingly.
Sun, Jul 14, 6:34 PM · Restricted Project

Fri, Jul 12

ychen created D64674: [llvm-readobj] Refactor dynamic string table indexing into a function..
Fri, Jul 12, 3:41 PM · Restricted Project
ychen retitled D56353: Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with '-mframe-pointer' from Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with'-mframe-pointer=' to Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with '-mframe-pointer'.
Fri, Jul 12, 11:47 AM · Restricted Project
ychen updated the diff for D56353: Replace cc1 options '-mdisable-fp-elim' and '-momit-leaf-frame-pointer' with '-mframe-pointer'.
Fri, Jul 12, 11:37 AM · Restricted Project

Thu, Jul 11

ychen accepted D64294: [Driver] Refactor interaction between -f(no-)?omit-frame-pointer and -m(no-)?omit-leaf-frame-pointer.

LGTM

Thu, Jul 11, 9:30 AM · Restricted Project, Restricted Project

Wed, Jul 10

ychen added inline comments to D64294: [Driver] Refactor interaction between -f(no-)?omit-frame-pointer and -m(no-)?omit-leaf-frame-pointer.
Wed, Jul 10, 10:21 AM · Restricted Project, Restricted Project

Tue, Jul 9

ychen added inline comments to D64294: [Driver] Refactor interaction between -f(no-)?omit-frame-pointer and -m(no-)?omit-leaf-frame-pointer.
Tue, Jul 9, 8:36 PM · Restricted Project, Restricted Project
ychen committed rGc5f8aa8bea66: [llvm-objdump] Keep warning for --disassemble-functions in correct order. (authored by ychen).
[llvm-objdump] Keep warning for --disassemble-functions in correct order.
Tue, Jul 9, 2:54 PM
ychen updated the diff for D64361: [llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files..
  • update
Tue, Jul 9, 2:50 PM · Restricted Project

Mon, Jul 8

ychen updated the diff for D64361: [llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files..
  • update
Mon, Jul 8, 9:21 PM · Restricted Project
ychen added a comment to D64361: [llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files..

Thank you for capturing that. The added new line in the previous revision is for GNU output. I should have done what LLVM output did: add a prefixing new line.

Mon, Jul 8, 7:16 PM · Restricted Project
ychen updated the diff for D64361: [llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files..
  • update
Mon, Jul 8, 7:15 PM · Restricted Project
ychen added inline comments to D64165: [llvm-objdump] Keep warning for --disassemble-functions in correct order..
Mon, Jul 8, 12:40 PM · Restricted Project
ychen created D64361: [llvm-readelf] Print "File: lib.a(file.o)" info when dumping archive files..
Mon, Jul 8, 12:40 PM · Restricted Project
ychen updated the summary of D64165: [llvm-objdump] Keep warning for --disassemble-functions in correct order..
Mon, Jul 8, 12:40 PM · Restricted Project
ychen committed rG5de4692cc746: Teach the symbolizer lib symbolize objects directly. (authored by ychen).
Teach the symbolizer lib symbolize objects directly.
Mon, Jul 8, 12:30 PM
ychen added a comment to D64294: [Driver] Refactor interaction between -f(no-)?omit-frame-pointer and -m(no-)?omit-leaf-frame-pointer.

In D56353, I remember @chandlerc thought -f(no-)omit-frame-pointer should win over -m(no-)omit-leaf-frame-pointer. I'm not sure what his thoughts on this now. @chandlerc ?

Mon, Jul 8, 9:46 AM · Restricted Project, Restricted Project
ychen added inline comments to D64165: [llvm-objdump] Keep warning for --disassemble-functions in correct order..
Mon, Jul 8, 8:44 AM · Restricted Project
ychen updated the diff for D64165: [llvm-objdump] Keep warning for --disassemble-functions in correct order..
  • update
Mon, Jul 8, 8:41 AM · Restricted Project

Wed, Jul 3

ychen created D64165: [llvm-objdump] Keep warning for --disassemble-functions in correct order..
Wed, Jul 3, 4:10 PM · Restricted Project
ychen updated the diff for D63521: Teach the symbolizer lib symbolize objects directly..
  • update
Wed, Jul 3, 11:56 AM · Restricted Project

Tue, Jul 2

ychen updated the diff for D63521: Teach the symbolizer lib symbolize objects directly..
  • update
Tue, Jul 2, 12:19 PM · Restricted Project
ychen committed rGd16c162c9453: [llvm-objdump] Warn if no user specified sections (-j) are not found. (authored by ychen).
[llvm-objdump] Warn if no user specified sections (-j) are not found.
Tue, Jul 2, 11:40 AM

Mon, Jul 1

ychen added a comment to D63521: Teach the symbolizer lib symbolize objects directly..

Hi @MaskRay, from @rnk 's inputs, seems this is not a common case worth pursuing at least for the moment, is it ok to move forward with the first choice I described?

My comment on your first version of this patch is about the potential code duplication. Now the codeview concern of the code duplication has been addressed.

The current version doesn't look bad to me. Do you think the initial version is better?

The expected client for this new symbolizeCode interface is for archive members and COFF is unlikely to symbolize plain object files for the moment.
I think the concern here the code movement for removing the potential duplication puts some untested code in the path for DWARF. I assume if there is a need for the COFF archive member symbolization we could easily deduplicate the code in the patch for COFF?

Mon, Jul 1, 10:04 AM · Restricted Project
ychen updated the diff for D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
  • update
Mon, Jul 1, 9:20 AM · Restricted Project

Fri, Jun 28

Herald added a project to D38446: update comments in clang-format.py for python3 compatibility: Restricted Project.
Fri, Jun 28, 2:25 PM · Restricted Project, Restricted Project
ychen added inline comments to D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
Fri, Jun 28, 10:07 AM · Restricted Project
ychen updated the diff for D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
  • update
Fri, Jun 28, 10:04 AM · Restricted Project
ychen added a comment to D63521: Teach the symbolizer lib symbolize objects directly..

Hi @MaskRay, from @rnk 's inputs, seems this is not a common case worth pursuing at least for the moment, is it ok to move forward with the first choice I described?

Fri, Jun 28, 9:52 AM · Restricted Project
ychen updated the diff for D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
  • update
Fri, Jun 28, 12:03 AM · Restricted Project

Thu, Jun 27

ychen updated the diff for D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
  • update
Thu, Jun 27, 12:15 PM · Restricted Project
ychen committed rG2dcd2c2493b1: [llvm-objdump] Update the doc for --disassemble-functions. (authored by ychen).
[llvm-objdump] Update the doc for --disassemble-functions.
Thu, Jun 27, 11:42 AM

Wed, Jun 26

ychen added a comment to D63521: Teach the symbolizer lib symbolize objects directly..

I don't think it's a loss of functionality versus the previous version which creates DWARFContext even for COFF object (not work obviously). This version still does not work for COFF archive but looks a little bit more reasonable. IMHO, we should have no or all support for COFF archive, not partial support. I could either

Wed, Jun 26, 11:40 PM · Restricted Project
ychen updated the diff for D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
  • update
Wed, Jun 26, 10:24 AM · Restricted Project
ychen updated the diff for D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
  • update
Wed, Jun 26, 10:20 AM · Restricted Project
ychen updated the diff for D63787: [llvm-objdump] Update the doc for --disassemble-functions..
  • update
Wed, Jun 26, 9:28 AM · Restricted Project
ychen retitled D63779: [llvm-objdump] Warn if no user specified sections (-j) are found. from [llvm-objdump] Warn if no user specified sections (-j) are not found. to [llvm-objdump] Warn if no user specified sections (-j) are found..
Wed, Jun 26, 9:05 AM · Restricted Project

Tue, Jun 25

ychen created D63787: [llvm-objdump] Update the doc for --disassemble-functions..
Tue, Jun 25, 1:35 PM · Restricted Project
ychen created D63779: [llvm-objdump] Warn if no user specified sections (-j) are found..
Tue, Jun 25, 10:31 AM · Restricted Project
ychen added inline comments to D63521: Teach the symbolizer lib symbolize objects directly..
Tue, Jun 25, 9:26 AM · Restricted Project

Mon, Jun 24

ychen added a comment to D63524: [llvm-objdump] Allow --disassemble-functions to take demangled names.

Hi @ychen, would you mind posting a patch to update the docs for this behaviour change? I didn't mention it previously, because rL364019, which added --disassemble-functions to the listed options, was still under review, but it landed before this change did.

Mon, Jun 24, 11:18 AM · Restricted Project
ychen committed rG6e04b92c896c: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output. (authored by ychen).
[llvm-objdump] Match GNU objdump on symbol types shown in disassembly output.
Mon, Jun 24, 10:51 AM
ychen closed D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
Mon, Jun 24, 10:51 AM · Restricted Project
ychen updated the diff for D63521: Teach the symbolizer lib symbolize objects directly..
  • address reviewer's comments.
Mon, Jun 24, 10:21 AM · Restricted Project

Sun, Jun 23

ychen added a comment to D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..

Hi @MaskRay, does this version look good to you?

Sun, Jun 23, 9:13 PM · Restricted Project

Fri, Jun 21

ychen added inline comments to D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..
Fri, Jun 21, 6:24 PM · Restricted Project
ychen committed rG4a2a15249067: [llvm-objdump] Allow --disassemble-functions to take demangled names (authored by ychen).
[llvm-objdump] Allow --disassemble-functions to take demangled names
Fri, Jun 21, 6:16 PM
ychen committed rG0eb966c8248b: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code. (authored by ychen).
[llvm-objdump] Move --start-address >= --stop-address check out of the -d code.
Fri, Jun 21, 5:25 PM
ychen closed D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..
Fri, Jun 21, 5:25 PM · Restricted Project
ychen added a comment to D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.

To help writing up the discussion thread, I'm trying to gather some data on how each target handle the case with GNU objdump. Weird that I could not reproduce the results @MaskRay @peter.smith was able to obtain. This is not to show favor for either choice but to understand the current situation on GNU side so we make a sensible decision.

Fri, Jun 21, 4:01 PM · Restricted Project
ychen added a comment to D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.

@MaskRay @jhenderson @peter.smith Thank you for the comments. I'll start a thread to collect more opinions.

Fri, Jun 21, 9:34 AM · Restricted Project

Thu, Jun 20

ychen added inline comments to D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..
Thu, Jun 20, 8:50 PM · Restricted Project
ychen updated the diff for D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..
  • update
Thu, Jun 20, 8:50 PM · Restricted Project
ychen added a comment to D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..

Thank you @MaskRay. Description changed. I intentionally leave out -t since I suspect it is a bug. See my comment in https://bugs.llvm.org/show_bug.cgi?id=41911.

Thu, Jun 20, 8:17 PM · Restricted Project
ychen retitled D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code. from [llvm-objdump] Perform --start-address / --stop-address error checking to [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..
Thu, Jun 20, 8:16 PM · Restricted Project
ychen created D63631: [llvm-objdump] Move --start-address >= --stop-address check out of the -d code..
Thu, Jun 20, 4:52 PM · Restricted Project
Herald added a project to D35035: [InstCombine] Prevent memcpy generation for small data size: Restricted Project.
Thu, Jun 20, 4:05 PM · Restricted Project
ychen updated the diff for D63524: [llvm-objdump] Allow --disassemble-functions to take demangled names.
  • update
Thu, Jun 20, 9:43 AM · Restricted Project
ychen updated the diff for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
  • update
Thu, Jun 20, 9:21 AM · Restricted Project
ychen removed a parent revision for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output.: D63394: [yaml2obj][ELF] Suport STT_LOOS, STT_HIOS, STT_LOPROC and STT_HIPROC..
Thu, Jun 20, 9:21 AM · Restricted Project
ychen removed a child revision for D63394: [yaml2obj][ELF] Suport STT_LOOS, STT_HIOS, STT_LOPROC and STT_HIPROC.: D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
Thu, Jun 20, 9:21 AM · Restricted Project
ychen added a comment to D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.

Sorry for doing this. It is very late in my timezone, but I think I have to mark it as "Request Changes" as I saw it accepted and I really don't want it to be committed...

If you all agree bar2@plt-0x20 is less ideal and our .plt is better, I'm not sure why you want to copy the behavior of GNU objdump. I believe this belongs to the aesthetical area where 100% compatibility is not necessary. Programs/shell scripts parsing <bar@plt-0x20> should be extremely brittle and they should be avoided. If the programs need addresses, they should just parse the address part, not the stuff in angle quotes.

I have found someone who agrees with me that firstsym-x is awful and the behavior should not be replicated. Let me check if I can get more opinions tomorrow.

Thu, Jun 20, 9:05 AM · Restricted Project

Wed, Jun 19

ychen added a comment to D63524: [llvm-objdump] Allow --disassemble-functions to take demangled names.

Can you persuade git/svn to do a rename of the test rather than a delete and add? That would make the diff easier to see.

Didn't find a way to achieve that unless splitting the file rename part out. Seems it is how Git works (https://stackoverflow.com/questions/7938582/how-does-git-detect-similar-files-for-its-rename-detection),

Wed, Jun 19, 5:29 PM · Restricted Project
ychen updated the diff for D63521: Teach the symbolizer lib symbolize objects directly..
  • update comment
Wed, Jun 19, 2:41 PM · Restricted Project
ychen added inline comments to D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
Wed, Jun 19, 2:37 PM · Restricted Project
ychen updated the diff for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
  • update
Wed, Jun 19, 2:36 PM · Restricted Project
ychen updated the diff for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
  • update
Wed, Jun 19, 2:22 PM · Restricted Project
ychen updated the diff for D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.
  • update
Wed, Jun 19, 1:46 PM · Restricted Project
ychen committed rG40a156b79179: [llvm-readobj] Match GNU output for DT_RPATH and DT_RUNPATH when dumping… (authored by ychen).
[llvm-readobj] Match GNU output for DT_RPATH and DT_RUNPATH when dumping…
Wed, Jun 19, 12:32 PM
ychen committed rGfee7365b078e: [llvm-objdump] Remove unnecessary indentation when dumping ELF data. (authored by ychen).
[llvm-objdump] Remove unnecessary indentation when dumping ELF data.
Wed, Jun 19, 11:42 AM

Tue, Jun 18

ychen committed rG58dbe47b9c64: Test commit access (authored by ychen).
Test commit access
Tue, Jun 18, 10:40 PM
ychen added a reviewer for D63521: Teach the symbolizer lib symbolize objects directly.: samsonov.
Tue, Jun 18, 10:02 PM · Restricted Project
ychen added a comment to D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.

riscv-objdump appears to use STT_SECTION symbols to symbolize addresses, e.g.:

Disassembly of section .plt:

000027d0 <.plt>:
    27d0:       00011397                auipc   t2,0x11

x86-64 and some other may not. I need to dig into the details. I also filed a binutils-gdb bug about this https://sourceware.org/bugzilla/show_bug.cgi?id=24702

Thanks. That's great to know! Once it is confirmed from GNU side, I will update the patch to reflect that.

Tue, Jun 18, 9:19 PM · Restricted Project
ychen updated the diff for D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.
  • update
Tue, Jun 18, 4:52 PM · Restricted Project
ychen created D63524: [llvm-objdump] Allow --disassemble-functions to take demangled names.
Tue, Jun 18, 3:38 PM · Restricted Project
ychen created D63521: Teach the symbolizer lib symbolize objects directly..
Tue, Jun 18, 3:26 PM · Restricted Project
ychen added inline comments to D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.
Tue, Jun 18, 3:16 PM · Restricted Project
ychen updated the diff for D63280: [llvm-objdump] Use <first-symbol>-<offset> as the section start symbol.
  • - perform start symbols insertion before disassembling
Tue, Jun 18, 3:15 PM · Restricted Project
ychen updated the diff for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
  • update test
Tue, Jun 18, 9:01 AM · Restricted Project
ychen added inline comments to D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
Tue, Jun 18, 9:00 AM · Restricted Project
ychen updated the diff for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
  • update test
Tue, Jun 18, 8:57 AM · Restricted Project

Jun 18 2019

ychen added inline comments to D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
Jun 18 2019, 7:58 AM · Restricted Project
ychen updated the diff for D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
  • update
Jun 18 2019, 7:58 AM · Restricted Project
ychen added a comment to D63393: [llvm-objdump] Remove unnecessary indentation when dumping ELF data..

I don't think you need the tr bit. If you have any tabs, the FileCheck will fail, because the whitespace in the lines doesn't contain any tabs.

Jun 18 2019, 7:51 AM · Restricted Project
ychen updated the diff for D63393: [llvm-objdump] Remove unnecessary indentation when dumping ELF data..
  • update
Jun 18 2019, 7:51 AM · Restricted Project

Jun 17 2019

ychen added inline comments to D63393: [llvm-objdump] Remove unnecessary indentation when dumping ELF data..
Jun 17 2019, 6:07 PM · Restricted Project
ychen updated the diff for D63393: [llvm-objdump] Remove unnecessary indentation when dumping ELF data..
  • update test
Jun 17 2019, 6:07 PM · Restricted Project
ychen retitled D62964: [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output. from [llvm-objdump] Include dynamic zero-sized and non-function symbols in disassembly to [llvm-objdump] Match GNU objdump on symbol types shown in disassembly output..
Jun 17 2019, 4:35 PM · Restricted Project