Page MenuHomePhabricator

shankar.easwaran (Shankar Easwaran)Email Not Verified
User

Projects

User does not belong to any projects.

User Details

User Since
May 11 2014, 5:40 AM (279 w, 1 d)

Recent Activity

Jun 16 2015

shankar.easwaran accepted D10478: [lld] [ELF] Fix wrong TBSS size.

LGTM

Jun 16 2015, 5:32 PM · lld

Jun 5 2015

shankar.easwaran accepted D10265: [ELF] Use symbol helper.

LGTM.

Jun 5 2015, 5:30 AM · lld

May 20 2015

shankar.easwaran accepted D9889: [LLD] Add support for multiple segments with same name.

Lgtm

May 20 2015, 11:39 AM · lld

Apr 15 2015

shankar.easwaran added a comment to D9035: ELF/ARM: Ignore R_ARM_V4BX but allow linking.

A relocation to nothing has a symbol index which points to the local undef symbol, the first symbol in the symbol table entry. We could keep that symbol as the sentinel symbol and make the null reference point to that.

Apr 15 2015, 9:24 PM · lld

Apr 9 2015

shankar.easwaran accepted D8945: LLD: Remove unused return vaules.
Apr 9 2015, 5:46 PM · lld

Apr 8 2015

shankar.easwaran added a comment to D8882: [ELF] Allow customization of OutputELFWriter class.

I do plan to clean those up in future. It's currently a very rudimentary solution.

Apr 8 2015, 7:03 AM · lld
shankar.easwaran added a comment to D8882: [ELF] Allow customization of OutputELFWriter class.

You could have a helper class that contains common code that the MIPS executable / dynamic writer can.contain? No?? This was how it used to be right?

Apr 8 2015, 4:59 AM · lld

Apr 7 2015

shankar.easwaran accepted D8886: Allow undefined symbols in shared library by default.

Lgtm

Apr 7 2015, 5:51 PM · lld
shankar.easwaran added a comment to D8863: [04/10] ELF/AArch64: Add support for R_AARCH64_PREL16.

Missing debug?

Apr 7 2015, 7:26 AM · lld
shankar.easwaran added a comment to D8862: [03/10] ELF/AArch64: Add support for R_AARCH64_PREL64.

Missing debug?

Apr 7 2015, 7:25 AM · lld
shankar.easwaran accepted D8861: [02/10] ELF/AArch64: Add support for checking PREL32 for overflow.
Apr 7 2015, 7:24 AM · lld
shankar.easwaran accepted D8860: [01/10] ELF/AArch64: Add support for R_AARCH64_ABS16.

Lgtm

Apr 7 2015, 7:23 AM · lld
shankar.easwaran accepted D8852: [ELF] Simplify adding default atoms.

LGTM

Apr 7 2015, 7:11 AM · lld

Apr 1 2015

shankar.easwaran accepted D8701: [lld][ELF][ARM] Generate PLT entries for function calls from ARM and Thumb code.

Thanks for the explanation. LGTM.

Apr 1 2015, 6:44 AM · lld

Mar 25 2015

shankar.easwaran accepted D8601: [lld][ARM] Handle mapping symbols.

LGTM

Mar 25 2015, 6:05 AM · lld

Mar 22 2015

shankar.easwaran accepted D8533: [Mips] Support MIPS N64 relocation record format.

Can you make changes to native reader and writer too?

Mar 22 2015, 6:00 PM · lld

Mar 18 2015

shankar.easwaran accepted D8353: [lld][ELF][ARM] Implement static (initial exec) TLS model.

LGTM

Mar 18 2015, 7:15 AM · lld

Mar 14 2015

shankar.easwaran added a comment to D8325: [ELF] Initial support for symbols visibility.

Yes protected need to be added to this as it's missing.

Mar 14 2015, 9:26 AM · lld

Mar 9 2015

shankar.easwaran accepted D8156: [lld] [LinkerScript] Implement linker script expression evaluation.

LGTM

Mar 9 2015, 6:56 AM

Mar 4 2015

shankar.easwaran added a comment to D8052: LLD: Core: Fix file ordinals of archive members..

At least on Gnu/ELF what I have seen is the order in the output is how symbols/files were resolved. No?? Do you have a test that fails on Gnu flavor and ELF that doesn't match real gnu behavior?

Mar 4 2015, 6:44 AM · lld

Mar 3 2015

shankar.easwaran accepted D8025: LLD: Implement our own future and use that for FileArchive::preload()..

lgtm

Mar 3 2015, 1:41 PM · lld
shankar.easwaran accepted D7966: [lld] Define DefinedAtom::sectionSize..

Other than the above mentioned comments code LGTM

Mar 3 2015, 5:16 AM · lld

Mar 2 2015

shankar.easwaran accepted D7833: Implementation of PLT: handling of IFUNC calls (gnu_indirect_function)..

Lgtm

Mar 2 2015, 7:09 AM · lld

Feb 28 2015

shankar.easwaran added a comment to D7966: [lld] Define DefinedAtom::sectionSize..

in my opinion this is a shared attribute for all atoms that belong to a section. Can we store this information for the atom in the context? The other way is to add a Reference to store the size. If the idea is to add all format specific attributes in the Atom I am fine but we need to discuss on llvmdev before adding those features.

Feb 28 2015, 8:52 AM · lld

Feb 26 2015

shankar.easwaran accepted D7927: Add {read,write}{16,32,64}{le,be} functions.

lgtm

Feb 26 2015, 7:09 PM · lld
shankar.easwaran added a comment to D7925: [ELF] Set up initial live symbol(s) to avoid incorrect reclaim of atoms.

Can you add one test?

Feb 26 2015, 7:06 PM · lld
shankar.easwaran accepted D7902: [Driver] Use paths explicitly provided by the -L option before default paths.
Feb 26 2015, 5:33 AM · lld

Feb 22 2015

shankar.easwaran added a comment to D7807: [lld] Remove duplicate class definitions of ELF LinkingContexts.

With hexagon the relocation encoding depends on the instruction. So when the relocation need to be applied the encoding mask has to be figured out from the instruction how it encodes the immediate bits.

Feb 22 2015, 8:08 AM · lld

Feb 21 2015

shankar.easwaran added a comment to D7807: [lld] Remove duplicate class definitions of ELF LinkingContexts.

We need lld to be tightly integrated with LLVM targets, these are the reasons I have in mind :

Feb 21 2015, 9:55 AM · lld

Feb 17 2015

shankar.easwaran accepted D7693: [lld][ELF] Demangle: don't expose raw info when getter is available..

lgtm

Feb 17 2015, 5:25 AM · lld

Feb 13 2015

shankar.easwaran requested changes to D7605: ELF: Move relocation predicates out of the context class..

Please don't move architecture specific code to common code.

Feb 13 2015, 5:02 AM · lld

Feb 11 2015

shankar.easwaran added a comment to D7549: [lld] findAbsoluteAtom asserts the atom is really existing.

Find should not check the result in the function. I like the approach that Simon suggested.

Feb 11 2015, 4:41 AM · lld

Feb 8 2015

shankar.easwaran accepted D7489: [ELF] Implement --strip-all/-s.

Lgtm

Feb 8 2015, 5:23 AM · lld

Feb 6 2015

shankar.easwaran accepted D7478: Driver: Replace switch cases with ifs..

Ok. LGTM with those changes that you are done with.

Feb 6 2015, 6:46 PM · lld
shankar.easwaran added inline comments to D7478: Driver: Replace switch cases with ifs..
Feb 6 2015, 6:32 PM · lld

Feb 1 2015

shankar.easwaran added a comment to D7322: [lld] Make ELFLinkingContext own LinkerScript buffers.

All linker scripts with -T are concatenated. I am not totally certain on what gnu tries to solve here.

Feb 1 2015, 4:57 PM · lld

Jan 30 2015

shankar.easwaran added a comment to D7311: MachO: Move LayoutPass to MachO directory..

Again, This pass is needed by ELF to adopt atom order file like macho at which time ELF will use it.

Jan 30 2015, 7:00 PM · lld
shankar.easwaran added a comment to D7278: ELF: Don't use LayoutPass..

Thanks for the info.

Jan 30 2015, 5:45 PM · lld
shankar.easwaran requested changes to D7278: ELF: Don't use LayoutPass..

You cannot move the array order pass outside the elf writer. You might have a linker script or an atom order file that selects aroms from .init_array and move it to to the ,text section after all the .text. The layout pass needs to make sure atoms are sorted by link order and leave everything else to the ELF writer.

Jan 30 2015, 5:08 AM · lld

Jan 28 2015

shankar.easwaran accepted D7223: [lld][ARM] Add relocations to perform function calls.

LGTM

Jan 28 2015, 6:28 AM · lld
shankar.easwaran accepted D7225: [lld] Remove PPC ELF target.
Jan 28 2015, 5:56 AM · lld
shankar.easwaran added a comment to D7223: [lld][ARM] Add relocations to perform function calls.

Calling ARM code from thumb needs a veneer right ?

Jan 28 2015, 5:53 AM · lld

Jan 27 2015

shankar.easwaran added a comment to D7189: Remove kindInGroup reference.

Section groups(grouping multiple sections as part of a group) cannot be handled without ingroup references for garbage collection and correctness.

Jan 27 2015, 5:08 AM · lld

Jan 26 2015

shankar.easwaran added a comment to D7189: Remove kindInGroup reference.

This is mainly relevant when you turn on garbage collection as Nick pointed out. You can refer to an atom in a section but to keep the section to be consistent w.r.t ELF you have to keep all the remaining atoms together.

Jan 26 2015, 7:25 PM · lld

Jan 24 2015

shankar.easwaran requested changes to D7161: [lld] Correct forming of ARM/Thumb atoms.
Jan 24 2015, 5:17 AM · lld

Jan 22 2015

shankar.easwaran accepted D7119: [lld] Fix the ELF shared library build targets.

Lgtm

Jan 22 2015, 5:19 PM · lld
shankar.easwaran added a comment to D7119: [lld] Fix the ELF shared library build targets.

Could we keep the headers for each of the Target linking contexts inside each target itself.

Jan 22 2015, 4:11 AM · lld

Dec 14 2014

shankar.easwaran added a comment to D6648: [ELF] Remove {ELF,}GNULinkerScript InputElements..

We are trying to duplicate getfilemagic in the driver which is actually part of the registry. The linker script should not be parsed in the driver immediately. The whole reason why the linker script is being parsed in the driver is we don't have a way to handle a script when the linker script is specified just like any other input file or library in the parser or registry. It should be parsed late whenever we figure out that the file is a linker script. We should parse more input files by using a lazy parsing method using file locator.

Dec 14 2014, 7:00 AM · lld
shankar.easwaran added a comment to D6648: [ELF] Remove {ELF,}GNULinkerScript InputElements..

It's best for the linker script to be handled through the registry.

Dec 14 2014, 6:06 AM · lld

Dec 9 2014

shankar.easwaran added a comment to D6578: [ELF] Make -init/-fini options compatible with the gnu linker.

$ ld.gold --help|grep ctors

--ctors-in-init-array       Use DT_INIT_ARRAY for all constructors (default)
--no-ctors-in-init-array    Handle constructors as directed by compiler.
Dec 9 2014, 5:33 AM · lld
shankar.easwaran added a comment to D6578: [ELF] Make -init/-fini options compatible with the gnu linker.

What's the right behaviour for static linking ?

Dec 9 2014, 4:25 AM · lld

Oct 27 2014

shankar.easwaran accepted D5852: [lld] Teach LLD how to parse complete linker scripts.

LGTM

Oct 27 2014, 10:17 PM

Oct 22 2014

shankar.easwaran accepted D5852: [lld] Teach LLD how to parse complete linker scripts.

LGTM

Oct 22 2014, 4:24 AM

Oct 2 2014

shankar.easwaran accepted D5574: [lld] [ELF] Only mark as DT_NEEDED libs that are strictly necessary.

LGTM

Oct 2 2014, 4:55 AM

Oct 1 2014

shankar.easwaran accepted D5573: [lld] [ELF] Never mark the dynamic linker as DT_NEEDED.

LGTM

Oct 1 2014, 8:37 PM
shankar.easwaran requested changes to D5573: [lld] [ELF] Never mark the dynamic linker as DT_NEEDED.

Remove it from soneeded instead.

Oct 1 2014, 8:13 PM

Sep 24 2014

shankar.easwaran accepted D5377: Bug fix in AArch64 PLT Entry.
Sep 24 2014, 7:17 AM · lld

Sep 8 2014

shankar.easwaran accepted D5255: Add missing HWEncoding to base register class..
Sep 8 2014, 7:45 PM

Aug 5 2014

shankar.easwaran added a comment to D4789: [ELF] LLD does not create a record in the .dynsym if a strong symbol defined in the executable file replaces a weak symbol from a shared library..

The best way to do this is using a ELF reference that sets a dynamic export tag. We should not be adding a export dynamic to an atom as that's not a property.

Aug 5 2014, 6:35 AM · lld

Jun 6 2014

shankar.easwaran added a comment to D4042: Add DefinedAtom::sectionSize()..

Iis this because of associated sections ? That you cannot get the section size ?

Jun 6 2014, 6:47 AM
shankar.easwaran added a comment to D4028: [PECOFF] Support COMDAT associative sections..

You have to still get native reader/writer to emit this in native format.

Jun 6 2014, 6:39 AM

Jun 2 2014

shankar.easwaran requested changes to D3986: Make dead-striping to handle reverse edges..

Did you measure the memory increase for linking large applications like clang for example ?

Jun 2 2014, 5:48 AM

May 29 2014

shankar.easwaran accepted D3947: [ELF] Fix incorrect sorting of .init_array / .fini_array sections.

LGTM

May 29 2014, 4:18 AM

May 22 2014

shankar.easwaran accepted D3881: error_code for dynamically generated error messages.

LGTM

May 22 2014, 7:39 PM
shankar.easwaran added inline comments to D3881: error_code for dynamically generated error messages.
May 22 2014, 6:32 PM

May 11 2014

shankar.easwaran accepted D3716: [ELF] Emit DT_TEXTREL dynamic table flag.
May 11 2014, 5:43 AM
shankar.easwaran added a comment to D3716: [ELF] Emit DT_TEXTREL dynamic table flag.

This patch LGTM but do you think it's better to have a pass ?

May 11 2014, 5:42 AM