Page MenuHomePhabricator

kettenis (Mark Kettenis)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 20 2016, 2:51 AM (165 w, 2 d)

Recent Activity

Jul 30 2018

kettenis accepted D49992: [ELF][ARM] Add Arm ABI names for float ABI ELF Header flags.

LGTM

Jul 30 2018, 11:09 AM
kettenis accepted D49993: [LLD][ELF][ARM] Implement support for Tag_ABI_VFP_args.

Nothing significant from my original diff survives, so as far as copyright is concerned, this can totally be considered to be Peter's work.

Jul 30 2018, 11:06 AM

May 17 2018

kettenis added a comment to D46839: [lld] Make ALIGN work with -r in linker scripts.

Would one of you be so kind to commit this for me?

May 17 2018, 1:00 PM

May 15 2018

kettenis updated the diff for D46839: [lld] Make ALIGN work with -r in linker scripts.

New diff that fixes the regression test.

May 15 2018, 1:31 PM
kettenis added inline comments to D46839: [lld] Make ALIGN work with -r in linker scripts.
May 15 2018, 4:29 AM

May 14 2018

kettenis created D46839: [lld] Make ALIGN work with -r in linker scripts.
May 14 2018, 10:58 AM

Mar 8 2018

kettenis added a comment to D43920: Set DF_TEXTREL instead of creating an empty DT_TEXTREL..

As @rafael noticed in a follow-up by mail, OpenBSD doesn't implement support for DF_TEXTREL. I don't see a reason why we couldn't so I've implemented support and expect it to be committed before OpenBSD 6.3 is released.

Mar 8 2018, 2:54 AM

Mar 1 2018

kettenis added inline comments to D43909: OpenBSD UBsan support / common.
Mar 1 2018, 5:48 AM

Nov 22 2017

kettenis added a comment to D40311: elf-core: Split up parsing code into os-specific functions.

Looks like a good improvement to me.

Nov 22 2017, 4:44 AM

Nov 2 2017

kettenis added inline comments to D39464: Define fs::allocate_file which preallocates disk blocks..
Nov 2 2017, 6:09 AM

Jul 25 2017

kettenis added a comment to D35509: Covnert .[cd]tors to .{init,fini}_array using synthetic section..

I added support for .init_array and .fini_array to OpenBSD's ld.so almost a year ago. It hasn't been extensively tested on architectures other than arm64, but there is no reason why it shouldn't work on other architectures. We don't really have any ABI concerns.

Jul 25 2017, 1:29 AM

Jul 1 2017

kettenis closed D32399: [LLD] Order writable executable sections before writable ones.

Diff has been committed in r304008.

Jul 1 2017, 6:10 AM

Jun 29 2017

kettenis added a comment to D34787: Delete comparison with GlobalOffsetTable..

It is not completely obvious to me that this is indeed equivalent as the semantics of R_GOTONLY_PC, but it seems to work. I think it works because we define _GLOBAL_OFFSET_TABLE_ as hidden. This no longer forces the creation of an empty GOT but I think the use of these relocation implies that there is a non-empty GOT already.

Jun 29 2017, 3:08 AM

Jun 28 2017

kettenis added inline comments to D34618: [LLD] Add basic 64-bit SPARC support.
Jun 28 2017, 5:32 AM
kettenis updated the diff for D34618: [LLD] Add basic 64-bit SPARC support.

New diff that addresses the comments raised so far.

Jun 28 2017, 5:31 AM
kettenis added a comment to D34618: [LLD] Add basic 64-bit SPARC support.

support for the most common SPARC relocations

I wonder how did you determine "the most common"?
Say, you did implement WDISP19 but skipped WDISP22 and WDISP16.
Just curious...

Jun 28 2017, 5:30 AM

Jun 27 2017

kettenis added inline comments to D34618: [LLD] Add basic 64-bit SPARC support.
Jun 27 2017, 2:03 AM

Jun 26 2017

kettenis added a comment to D34618: [LLD] Add basic 64-bit SPARC support.

Was thinking about the older SPARCV7 CPUs used in the sun4 and sun4c machines when I made that remark. But it seems that even the SPARCV8 reference MMU uses a 4K page size. Nevertheless one would probably still use 8K as the "minimum" page size for 32-bit code to allow code to run on SPARCV9 hardware. That is what the GNU toolchain does.

Jun 26 2017, 1:40 PM
kettenis added inline comments to D34618: [LLD] Add basic 64-bit SPARC support.
Jun 26 2017, 8:46 AM
kettenis added a comment to D34618: [LLD] Add basic 64-bit SPARC support.

For 64-bit SPARC (SPARCV9) the relevant document is https://sparc.org/wp-content/uploads/2014/01/SCD.2.4.1.pdf.gz. Older versions and related documents are available at https://sparc.org/technical-documents/specifications/.

Jun 26 2017, 8:18 AM
kettenis created D34618: [LLD] Add basic 64-bit SPARC support.
Jun 26 2017, 7:22 AM

May 24 2017

kettenis closed D32397: [LLD] Avoid empty .eh_frame sections.

Committed r301931

May 24 2017, 8:33 AM

May 23 2017

kettenis updated the diff for D32399: [LLD] Order writable executable sections before writable ones.

Updated diff adapted to the changes that have been made to the function that determines the section ordering. Also adjusts the testsuite for the changed ordering,

May 23 2017, 1:40 PM

May 1 2017

kettenis added a comment to D31620: Always use the multiprocess module.

Any idea who can test OpenBSD?

Mark, can you give it a try?

Cheers,

Sure. Just running the "make lld/test" would be enough?

May 1 2017, 3:22 PM
kettenis added a comment to D31620: Always use the multiprocess module.

Any idea who can test OpenBSD?

Mark, can you give it a try?

Cheers,

May 1 2017, 1:52 PM

Apr 25 2017

kettenis added inline comments to D32450: [libunwind] Add 64-bit SPARC support.
Apr 25 2017, 12:07 AM
kettenis added a comment to D32450: [libunwind] Add 64-bit SPARC support.
Apr 25 2017, 12:04 AM

Apr 24 2017

kettenis added inline comments to D32399: [LLD] Order writable executable sections before writable ones.
Apr 24 2017, 2:23 PM
kettenis created D32450: [libunwind] Add 64-bit SPARC support.
Apr 24 2017, 12:42 PM

Apr 23 2017

kettenis created D32399: [LLD] Order writable executable sections before writable ones.
Apr 23 2017, 8:17 AM
kettenis created D32397: [LLD] Avoid empty .eh_frame sections.
Apr 23 2017, 6:50 AM

Apr 20 2017

kettenis added inline comments to D32149: [lldb] [Process] Add proper support for NetBSD core files with threads.
Apr 20 2017, 5:25 AM · Restricted Project, Restricted Project
kettenis added a comment to D32149: [lldb] [Process] Add proper support for NetBSD core files with threads.

A test would infinitely times more valuable then a demo script. What is the tiniest core file you can produce on NetBSD? (on linux we've gotten them down to about 20K) Then we could check that in and write a test for it...

Apr 20 2017, 4:41 AM · Restricted Project, Restricted Project
kettenis added a comment to D32149: [lldb] [Process] Add proper support for NetBSD core files with threads.

Generally looks reasonable to me. A few comments inline.

Apr 20 2017, 4:35 AM · Restricted Project, Restricted Project

Mar 29 2017

kettenis added a comment to D31450: Battery of NetBSD support improvements.

The core file reading bits look ok to me.

Mar 29 2017, 7:32 AM · Restricted Project

Mar 26 2017

kettenis added a comment to D31374: Add support for tracing hello-world application on NetBSD.

On OpenBSD the register context used in core dumps uses the same layout as ptrace(2). That's not the case on all OSes, but I believe that is the case for NetBSD as well. Would it be possible to re-use the register context data structures defined in the source/Plugins/Process/Utility/ directory?

Mar 26 2017, 8:04 AM · Restricted Project
kettenis added a comment to D31131: [LLDB] OpenBSD support.

Can somebody commit this diff for me?

Mar 26 2017, 7:47 AM · Restricted Project

Mar 24 2017

kettenis updated the diff for D31131: [LLDB] OpenBSD support.

Updated diff to account for the FileSpec.h move.

Mar 24 2017, 6:57 AM · Restricted Project
kettenis added inline comments to D31131: [LLDB] OpenBSD support.
Mar 24 2017, 6:56 AM · Restricted Project

Mar 23 2017

kettenis updated the diff for D31131: [LLDB] OpenBSD support.

Apologies. Previous diff contained a bogus change to DYLDRendezvous.cpp and a formatting botch. Please review this updated version instead,

Mar 23 2017, 1:53 PM · Restricted Project
kettenis updated the diff for D31131: [LLDB] OpenBSD support.

New diff. This one adds support for OpenBSD/amd64, OpenBSD/arm, OpenBSD/arm64 and OpenBSD/i386. I'm holding off on resorting existing code. I'm willing to do that in a separate diff.

Mar 23 2017, 1:24 PM · Restricted Project

Mar 20 2017

kettenis added a comment to D31131: [LLDB] OpenBSD support.

Will revise the diff based on your comments. Thanks!

Mar 20 2017, 4:31 AM · Restricted Project

Mar 19 2017

kettenis created D31131: [LLDB] OpenBSD support.
Mar 19 2017, 4:51 PM · Restricted Project
kettenis created D31122: [LLD] Add -z nodlopen option.
Mar 19 2017, 3:46 AM

Feb 27 2017

kettenis added a comment to D30335: [LLD] Add terminator to .eh_frame sections.

Could you commit this for me?

Feb 27 2017, 12:00 PM

Feb 25 2017

kettenis updated the diff for D30335: [LLD] Add terminator to .eh_frame sections.

Thanks for the review. This new version expands the comment to explain why we're adding the terminator.

Feb 25 2017, 10:32 AM

Feb 24 2017

kettenis created D30335: [LLD] Add terminator to .eh_frame sections.
Feb 24 2017, 5:30 AM

Jan 23 2017

kettenis added a comment to D28984: [LLD] Do not allocate space for common symbols with -r.

Thanks. I don't have commit access, so I'd appreciate it if somebody could commit this for me.

Jan 23 2017, 7:40 PM
kettenis updated the diff for D28984: [LLD] Do not allocate space for common symbols with -r.

Apologies. Forgot to add a test. The test now also tests the --no-define-common option.

Jan 23 2017, 4:57 PM
kettenis updated the diff for D28984: [LLD] Do not allocate space for common symbols with -r.

New diff that addresses the issues raised by Rui.

Jan 23 2017, 3:52 PM

Jan 22 2017

kettenis updated the diff for D28984: [LLD] Do not allocate space for common symbols with -r.

New diff that return zero as the VA but sets st_value to the alignment for SHN_COMMON symbols.
Now also includes a test case.

Jan 22 2017, 3:13 PM

Jan 21 2017

kettenis added a comment to D28984: [LLD] Do not allocate space for common symbols with -r.

h>>! In D28984#652498, @ruiu wrote:

Can you add a test?

Jan 21 2017, 3:59 PM
kettenis created D28984: [LLD] Do not allocate space for common symbols with -r.
Jan 21 2017, 3:37 PM

Jan 5 2017

kettenis added a comment to D28313: Change which input sections we concatenate.

FWIW, the Solaris linker doesn't merge sections purely on based on name, but the GNU linker does so there probably is plenty of code that depends on this "feature".

Jan 5 2017, 8:56 AM

Dec 21 2016

kettenis abandoned D27988: [LLD] Combine read-only and writable input sections into single output section.

Rafael pointed out that the current behaviour matches the ELF specification.

Dec 21 2016, 4:12 AM
kettenis added a comment to D27988: [LLD] Combine read-only and writable input sections into single output section.

Rafael pointed out that the current behaviour matches the ELF specification.

Dec 21 2016, 3:30 AM
kettenis added a comment to D28002: [LLD] Use cpio -it instead of cpio -t .

My guess is that it is an (undocumented) GNU extension. FreeBSD's libarchive-based cpio obviously attempts to implement the GNU extensions.
OpenBSD used a different cpio implementation inherited from NetBSD, and we generally avoid implementing GNU extensions to encourage our
users to write portable code/scripts. FWIW, the Solaris cpio doesn't accept -t without -i either.

Dec 21 2016, 3:16 AM

Dec 20 2016

kettenis retitled D28002: [LLD] Use cpio -it instead of cpio -t from to [LLD] Use cpio -it instead of cpio -t .
Dec 20 2016, 2:26 PM
kettenis added a comment to D27988: [LLD] Combine read-only and writable input sections into single output section.

Note that the cited PR is about merging segments instead of sections; a not entirely unrelated, but different issue.

Dec 20 2016, 2:12 PM
kettenis updated the diff for D27988: [LLD] Combine read-only and writable input sections into single output section.

Added a test case.

Dec 20 2016, 2:07 PM
kettenis added a comment to D27988: [LLD] Combine read-only and writable input sections into single output section.

Didn't write a test for this yet as I couldn't figure out how to create a test with multiple input object files
Is there an example of such a test in the lld test suite?

Dec 20 2016, 7:30 AM
kettenis retitled D27988: [LLD] Combine read-only and writable input sections into single output section from to [LLD] Combine read-only and writable input sections into single output section.
Dec 20 2016, 7:27 AM