Page MenuHomePhabricator

edward-jones (Edward Jones)
Compiler Engineer at Embecosm

Projects

User does not belong to any projects.

User Details

User Since
Aug 19 2015, 6:56 AM (230 w, 5 d)

Recent Activity

Nov 22 2019

edward-jones committed rGe0f22fe04a5c: [RISCV] Use compiler-rt if no GCC installation detected (authored by edward-jones).
[RISCV] Use compiler-rt if no GCC installation detected
Nov 22 2019, 12:34 PM
edward-jones closed D68407: [RISCV] Use compiler-rt if no GCC installation detected.
Nov 22 2019, 12:34 PM · Restricted Project

Nov 14 2019

edward-jones updated the diff for D68407: [RISCV] Use compiler-rt if no GCC installation detected.

Added tests that a user can specify a specific runtime library through --rtlib. Also rebased on master, and added a comment explaining the use of --rtlib=platform in the tests.

Nov 14 2019, 5:20 AM · Restricted Project
edward-jones requested review of D68407: [RISCV] Use compiler-rt if no GCC installation detected.
Nov 14 2019, 4:34 AM · Restricted Project
edward-jones added a comment to D68407: [RISCV] Use compiler-rt if no GCC installation detected.

If I set -DCLANG_DEFAULT_RTLIB=compiler-rt I see the following failure in clang/test/Driver/cross-linux.c:

Nov 14 2019, 4:34 AM · Restricted Project
edward-jones updated the diff for D68407: [RISCV] Use compiler-rt if no GCC installation detected.

It seems that the option --rtlib=platform exists to force the driver to ignore the -DCLANG_DEFAULT_RTLIB for testing purposes, so I've added this option to the tests that were broken.

Nov 14 2019, 4:15 AM · Restricted Project
edward-jones reopened D68407: [RISCV] Use compiler-rt if no GCC installation detected.
Nov 14 2019, 4:06 AM · Restricted Project
edward-jones added a comment to D68407: [RISCV] Use compiler-rt if no GCC installation detected.

Okay. I'll see if I can find a way to test this when CLANG_DEFAULT_RTLIB is set, and then I'll resubmit

Nov 14 2019, 2:40 AM · Restricted Project

Nov 13 2019

edward-jones committed rG3289352e6bb9: [RISCV] Use compiler-rt if no GCC installation detected (authored by edward-jones).
[RISCV] Use compiler-rt if no GCC installation detected
Nov 13 2019, 9:32 AM
edward-jones closed D68407: [RISCV] Use compiler-rt if no GCC installation detected.
Nov 13 2019, 9:32 AM · Restricted Project

Nov 7 2019

edward-jones added a comment to D58896: Suppress -Wchar-subscripts if the index is a literal char.

Okay I've reverted this in rG90ecfa2f5f7f . I'll make improvements and resubmit this for review.

Nov 7 2019, 10:56 AM · Restricted Project
edward-jones committed rG90ecfa2f5f7f: Revert "[Sema] Suppress -Wchar-subscripts if the index is a literal char" (authored by edward-jones).
Revert "[Sema] Suppress -Wchar-subscripts if the index is a literal char"
Nov 7 2019, 10:48 AM
edward-jones added a reverting change for rG7adab7719e55: [Sema] Suppress -Wchar-subscripts if the index is a literal char: rG90ecfa2f5f7f: Revert "[Sema] Suppress -Wchar-subscripts if the index is a literal char".
Nov 7 2019, 10:48 AM
edward-jones updated the diff for D68407: [RISCV] Use compiler-rt if no GCC installation detected.

I've changed this to always return ToolChain::UNW_None from RISCVToolChain::GetUnwindLibType now. As a consequence we get the original behaviour of only -lgcc being added to the link command.

Nov 7 2019, 9:51 AM · Restricted Project
edward-jones added a comment to D58896: Suppress -Wchar-subscripts if the index is a literal char.

But how about literals like '\x80' where the promoted value depends on whether plain char is signed or unsigned?

Nov 7 2019, 9:42 AM · Restricted Project
edward-jones added a comment to D68407: [RISCV] Use compiler-rt if no GCC installation detected.

This patch is looking much better, thanks for updating it.

Please may you clarify what RISC-V gcc does for -lgcc, -lgcc_s, -lgcc_eh? Is it different to what gcc does on other targets? Being closer to matching the linker arguments that gcc provides to ld seems like a good idea, IMO.

Nov 7 2019, 8:55 AM · Restricted Project
edward-jones abandoned D34103: Allow use of fixed width integer types in builtin definitions.
Nov 7 2019, 8:00 AM
edward-jones committed rG7adab7719e55: [Sema] Suppress -Wchar-subscripts if the index is a literal char (authored by edward-jones).
[Sema] Suppress -Wchar-subscripts if the index is a literal char
Nov 7 2019, 7:51 AM
edward-jones closed D58896: Suppress -Wchar-subscripts if the index is a literal char.
Nov 7 2019, 7:51 AM · Restricted Project
edward-jones committed rGdd2588001082: [RISCV] Add riscv{32,64} to ALL_CRT_SUPPORTED_ARCH list (authored by edward-jones).
[RISCV] Add riscv{32,64} to ALL_CRT_SUPPORTED_ARCH list
Nov 7 2019, 7:41 AM
edward-jones closed D68393: [RISCV] Add riscv{32,64} to ALL_CRT_SUPPORTED_ARCH list.
Nov 7 2019, 7:41 AM · Restricted Project, Restricted Project
edward-jones committed rGde61aa3118b9: [RISCV] Improve sysroot computation if no GCC install detected (authored by edward-jones).
[RISCV] Improve sysroot computation if no GCC install detected
Nov 7 2019, 7:23 AM
edward-jones closed D68391: [RISCV] Improve sysroot computation if no GCC install detected.
Nov 7 2019, 7:23 AM · Restricted Project
edward-jones added inline comments to D67348: [RISCV] Add codegen pattern matching for bit manipulation assembly instructions..
Nov 7 2019, 4:10 AM · Restricted Project
edward-jones added a comment to D69899: [RISCV] Improve assembler missing feature warnings.

This looks good to me, the only thing that I'm not sure about is the phrasing of the warnings:

Nov 7 2019, 3:24 AM · Restricted Project

Nov 6 2019

edward-jones requested review of D68391: [RISCV] Improve sysroot computation if no GCC install detected.
Nov 6 2019, 6:45 AM · Restricted Project

Nov 4 2019

edward-jones added a comment to D68407: [RISCV] Use compiler-rt if no GCC installation detected.

Please can you add a test for riscv32 and riscv64 without libgcc?

Nov 4 2019, 9:31 AM · Restricted Project
edward-jones updated the diff for D68407: [RISCV] Use compiler-rt if no GCC installation detected.

I've rebased, and also refactored this to use AddRunTimeLibs and GetDefaultRuntimeLibType. The tests have been updated to reflect the changes. Notable changes compared to the last version of the patch:

Nov 4 2019, 9:31 AM · Restricted Project
edward-jones updated the diff for D68391: [RISCV] Improve sysroot computation if no GCC install detected.

Rebased, added a comment to explain that this is using the user provided triple instead of the canonical one, and split out the tests requiring a shell into separate files (clang/test/Driver/riscv{32,64}-toolchain-extra.c)

Nov 4 2019, 9:12 AM · Restricted Project

Oct 14 2019

edward-jones added a comment to D68393: [RISCV] Add riscv{32,64} to ALL_CRT_SUPPORTED_ARCH list.

@edward-jones: what LLVM cmake options are you using to test this?

Oct 14 2019, 5:56 AM · Restricted Project, Restricted Project

Oct 4 2019

edward-jones added a reviewer for D68407: [RISCV] Use compiler-rt if no GCC installation detected: luismarques.
Oct 4 2019, 6:47 AM · Restricted Project
edward-jones added reviewers for D68391: [RISCV] Improve sysroot computation if no GCC install detected: asb, luismarques.
Oct 4 2019, 6:47 AM · Restricted Project
edward-jones added reviewers for D68393: [RISCV] Add riscv{32,64} to ALL_CRT_SUPPORTED_ARCH list: asb, luismarques.
Oct 4 2019, 6:47 AM · Restricted Project, Restricted Project
edward-jones added a child revision for D68391: [RISCV] Improve sysroot computation if no GCC install detected: D68407: [RISCV] Use compiler-rt if no GCC installation detected.
Oct 4 2019, 6:45 AM · Restricted Project
edward-jones added a parent revision for D68407: [RISCV] Use compiler-rt if no GCC installation detected: D68391: [RISCV] Improve sysroot computation if no GCC install detected.
Oct 4 2019, 6:45 AM · Restricted Project
edward-jones updated the diff for D68407: [RISCV] Use compiler-rt if no GCC installation detected.

Rebased, updated tests from D68391 to check for existence of compiler-rt crtbegin/crtend and runtime library.

Oct 4 2019, 6:45 AM · Restricted Project
edward-jones updated the diff for D68391: [RISCV] Improve sysroot computation if no GCC install detected.

Rebased and added tests

Oct 4 2019, 6:42 AM · Restricted Project
edward-jones planned changes to D68391: [RISCV] Improve sysroot computation if no GCC install detected.

I'm reworking this at the moment and adding some tests. Standby!

Oct 4 2019, 5:56 AM · Restricted Project

Oct 3 2019

edward-jones added a comment to D68407: [RISCV] Use compiler-rt if no GCC installation detected.

Work in progress because this needs tests (and probably clang-format too).

Oct 3 2019, 10:20 AM · Restricted Project
edward-jones created D68407: [RISCV] Use compiler-rt if no GCC installation detected.
Oct 3 2019, 10:12 AM · Restricted Project
edward-jones committed rGf5177a7db48b: [RISCV] Add obsolete aliases of fscsr, frcsr (fssr, frsr) (authored by edward-jones).
[RISCV] Add obsolete aliases of fscsr, frcsr (fssr, frsr)
Oct 3 2019, 8:47 AM
edward-jones updated the diff for D68392: [RISCV] Add obsolete aliases of fscsr, frcsr (fssr, frsr).

Added tests!

Oct 3 2019, 7:59 AM · Restricted Project
edward-jones added a comment to D68391: [RISCV] Improve sysroot computation if no GCC install detected.

Before falling back to returning the empty string this first looks for a directory with the triple name up one level from the driver.

Oct 3 2019, 7:35 AM · Restricted Project
edward-jones added a comment to D68392: [RISCV] Add obsolete aliases of fscsr, frcsr (fssr, frsr).

A comment on github by Andrew Waterman suggests that these aliases are expected to be supported by the tools even if they are obsolete. At the very least newlib still seems to use them.

Oct 3 2019, 7:18 AM · Restricted Project
edward-jones created D68393: [RISCV] Add riscv{32,64} to ALL_CRT_SUPPORTED_ARCH list.
Oct 3 2019, 7:13 AM · Restricted Project, Restricted Project
edward-jones created D68392: [RISCV] Add obsolete aliases of fscsr, frcsr (fssr, frsr).
Oct 3 2019, 7:13 AM · Restricted Project
edward-jones created D68391: [RISCV] Improve sysroot computation if no GCC install detected.
Oct 3 2019, 7:10 AM · Restricted Project

Sep 2 2019

edward-jones abandoned D64715: [WIP][RISCV] Use RISCV_32_PCREL reloc for FDE initial location.

Superceded by D66419

Sep 2 2019, 4:43 AM · Restricted Project

Aug 20 2019

edward-jones abandoned D63409: [RISCV] Specify various encodings for DWARF exception handling.

Abandoned since this was superceded by rL366327.

Aug 20 2019, 1:42 AM · Restricted Project

Aug 5 2019

edward-jones updated the diff for D63404: [RISCV] Don't force absolute FK_Data_X fixups to relocs.

Rebase, and fix another test of FDE

Aug 5 2019, 9:04 AM · Restricted Project

Jul 16 2019

edward-jones added a comment to D63409: [RISCV] Specify various encodings for DWARF exception handling.
In D63409#1587117, @asb wrote:

Hi Ed, this is really hard to review without any documentation in the psABI or otherwise. Can you confirm that you've verified this matches gcc/gas? Are you planning to submit document to riscv-elf-psabi-doc to reflect this?

Jul 16 2019, 4:53 AM · Restricted Project

Jul 15 2019

edward-jones added a comment to D64715: [WIP][RISCV] Use RISCV_32_PCREL reloc for FDE initial location.

Here's a link to the equivalent change made to GAS which should give more context (the commit has since be incorporated into upstream binutils):

Jul 15 2019, 4:27 AM · Restricted Project
edward-jones added inline comments to D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.
Jul 15 2019, 4:06 AM · Restricted Project
edward-jones created D64715: [WIP][RISCV] Use RISCV_32_PCREL reloc for FDE initial location.
Jul 15 2019, 4:05 AM · Restricted Project

Jul 8 2019

edward-jones added a comment to D63404: [RISCV] Don't force absolute FK_Data_X fixups to relocs.

I realize that I hadn't associated this change with D61584

Jul 8 2019, 9:01 AM · Restricted Project
edward-jones added a parent revision for D63404: [RISCV] Don't force absolute FK_Data_X fixups to relocs: D61584: [DebugInfo] Some fields do not need relocations even relax is enabled..
Jul 8 2019, 8:50 AM · Restricted Project
edward-jones added a child revision for D61584: [DebugInfo] Some fields do not need relocations even relax is enabled.: D63404: [RISCV] Don't force absolute FK_Data_X fixups to relocs.
Jul 8 2019, 8:50 AM · Restricted Project
edward-jones removed a parent revision for D63417: [RISCV] Specify registers used for exception handling: D61584: [DebugInfo] Some fields do not need relocations even relax is enabled..
Jul 8 2019, 8:49 AM · Restricted Project, Restricted Project
edward-jones removed a child revision for D61584: [DebugInfo] Some fields do not need relocations even relax is enabled.: D63417: [RISCV] Specify registers used for exception handling.
Jul 8 2019, 8:49 AM · Restricted Project
edward-jones added a parent revision for D63417: [RISCV] Specify registers used for exception handling: D61584: [DebugInfo] Some fields do not need relocations even relax is enabled..
Jul 8 2019, 8:49 AM · Restricted Project, Restricted Project
edward-jones added a child revision for D61584: [DebugInfo] Some fields do not need relocations even relax is enabled.: D63417: [RISCV] Specify registers used for exception handling.
Jul 8 2019, 8:49 AM · Restricted Project

Jul 3 2019

edward-jones added a comment to D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.

I'll look into changes that would need to be made to the psabi docs too.

Jul 3 2019, 5:46 AM · Restricted Project
edward-jones updated the diff for D63417: [RISCV] Specify registers used for exception handling.
Jul 3 2019, 5:43 AM · Restricted Project, Restricted Project
edward-jones updated the diff for D63411: [RISCV] Specify registers used in DWARF exception handling.

Added test, rebased.

Jul 3 2019, 5:41 AM · Restricted Project
edward-jones abandoned D63416: [RISCV] Use DW_EH_PE_udata4 for call site encoding in .gcc_except_table.

Changes from this revision have been merged into D63415

Jul 3 2019, 5:41 AM · Restricted Project
edward-jones updated the diff for D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.

Merged D63416 into this patch, rebased.

Jul 3 2019, 5:41 AM · Restricted Project
edward-jones updated the diff for D63404: [RISCV] Don't force absolute FK_Data_X fixups to relocs.

Added test, rebased

Jul 3 2019, 5:29 AM · Restricted Project
edward-jones updated the diff for D63417: [RISCV] Specify registers used for exception handling.

Add riscv64 target run line, renamed test file to builtins-riscv.c, and rebased.

Jul 3 2019, 2:48 AM · Restricted Project, Restricted Project

Jun 27 2019

edward-jones accepted D62686: [RISCV] Add support for save/restore of callee-saved registers via libcalls.

LGTM now

Jun 27 2019, 8:19 AM · Restricted Project, Restricted Project

Jun 25 2019

edward-jones added a comment to D63411: [RISCV] Specify registers used in DWARF exception handling.
In D63411#1551719, @asb wrote:

Thanks for the patch! Do you have a reference for these being the appropriate values?

Jun 25 2019, 8:59 AM · Restricted Project
edward-jones added inline comments to D61584: [DebugInfo] Some fields do not need relocations even relax is enabled..
Jun 25 2019, 8:06 AM · Restricted Project
edward-jones added a comment to D63409: [RISCV] Specify various encodings for DWARF exception handling.

I think D63409, D63411, D63415, and D63416 could be merged as one patch. They are all related to exception handling for RISC-V.

Jun 25 2019, 6:54 AM · Restricted Project

Jun 19 2019

edward-jones added inline comments to D61584: [DebugInfo] Some fields do not need relocations even relax is enabled..
Jun 19 2019, 7:03 AM · Restricted Project
edward-jones updated the diff for D63274: [RISCV] Avoid overflow when determining number of nops for code align.

Rebased

Jun 19 2019, 4:48 AM · Restricted Project
edward-jones updated the diff for D63285: [RISCV] Fix a potential issue in shouldInsertFixupForCodeAlign().

Rebased

Jun 19 2019, 4:48 AM · Restricted Project
edward-jones planned changes to D23664: [AAP] (1) Add AAP target triple.
Jun 19 2019, 4:28 AM
edward-jones updated the diff for D63416: [RISCV] Use DW_EH_PE_udata4 for call site encoding in .gcc_except_table.

Added tests, rebased

Jun 19 2019, 4:28 AM · Restricted Project
edward-jones updated the diff for D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.

Rebased against master

Jun 19 2019, 4:26 AM · Restricted Project
edward-jones updated the diff for D63409: [RISCV] Specify various encodings for DWARF exception handling.

Added tests, rebased against master

Jun 19 2019, 4:25 AM · Restricted Project
edward-jones added a parent revision for D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable: D63409: [RISCV] Specify various encodings for DWARF exception handling.
Jun 19 2019, 4:25 AM · Restricted Project
edward-jones added a child revision for D63409: [RISCV] Specify various encodings for DWARF exception handling: D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.
Jun 19 2019, 4:25 AM · Restricted Project
edward-jones removed a parent revision for D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable: D63411: [RISCV] Specify registers used in DWARF exception handling.
Jun 19 2019, 4:22 AM · Restricted Project
edward-jones added a parent revision for D63409: [RISCV] Specify various encodings for DWARF exception handling: D63411: [RISCV] Specify registers used in DWARF exception handling.
Jun 19 2019, 4:22 AM · Restricted Project
edward-jones edited child revisions for D63411: [RISCV] Specify registers used in DWARF exception handling, added: 1; removed: 1.
Jun 19 2019, 4:22 AM · Restricted Project
edward-jones updated the diff for D63411: [RISCV] Specify registers used in DWARF exception handling.

Rebased against master

Jun 19 2019, 4:22 AM · Restricted Project
edward-jones removed a child revision for D63409: [RISCV] Specify various encodings for DWARF exception handling: D63411: [RISCV] Specify registers used in DWARF exception handling.
Jun 19 2019, 4:22 AM · Restricted Project
edward-jones removed a parent revision for D63411: [RISCV] Specify registers used in DWARF exception handling: D63409: [RISCV] Specify various encodings for DWARF exception handling.
Jun 19 2019, 4:22 AM · Restricted Project
edward-jones updated the diff for D63404: [RISCV] Don't force absolute FK_Data_X fixups to relocs.

Rebased against master

Jun 19 2019, 4:22 AM · Restricted Project
edward-jones updated the diff for D63417: [RISCV] Specify registers used for exception handling.

Added tests

Jun 19 2019, 4:20 AM · Restricted Project, Restricted Project

Jun 17 2019

edward-jones added a parent revision for D63409: [RISCV] Specify various encodings for DWARF exception handling: D63417: [RISCV] Specify registers used for exception handling.
Jun 17 2019, 10:07 AM · Restricted Project
edward-jones added a child revision for D63417: [RISCV] Specify registers used for exception handling: D63409: [RISCV] Specify various encodings for DWARF exception handling.
Jun 17 2019, 10:07 AM · Restricted Project, Restricted Project
edward-jones removed a child revision for D63411: [RISCV] Specify registers used in DWARF exception handling: D63417: [RISCV] Specify registers used for exception handling.
Jun 17 2019, 10:07 AM · Restricted Project
edward-jones removed a parent revision for D63417: [RISCV] Specify registers used for exception handling: D63411: [RISCV] Specify registers used in DWARF exception handling.
Jun 17 2019, 10:07 AM · Restricted Project, Restricted Project
edward-jones added a comment to D62686: [RISCV] Add support for save/restore of callee-saved registers via libcalls.

Since CFI emission has been added this probably needs to be rebased. I don't think CFI should materially affect the implementation though.

Jun 17 2019, 8:31 AM · Restricted Project, Restricted Project
edward-jones added a parent revision for D63417: [RISCV] Specify registers used for exception handling: D63411: [RISCV] Specify registers used in DWARF exception handling.
Jun 17 2019, 4:58 AM · Restricted Project, Restricted Project
edward-jones added a child revision for D63411: [RISCV] Specify registers used in DWARF exception handling: D63417: [RISCV] Specify registers used for exception handling.
Jun 17 2019, 4:58 AM · Restricted Project
edward-jones added a parent revision for D63416: [RISCV] Use DW_EH_PE_udata4 for call site encoding in .gcc_except_table: D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.
Jun 17 2019, 4:58 AM · Restricted Project
edward-jones added a child revision for D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable: D63416: [RISCV] Use DW_EH_PE_udata4 for call site encoding in .gcc_except_table.
Jun 17 2019, 4:58 AM · Restricted Project
edward-jones added a parent revision for D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable: D63411: [RISCV] Specify registers used in DWARF exception handling.
Jun 17 2019, 4:55 AM · Restricted Project
edward-jones added a child revision for D63411: [RISCV] Specify registers used in DWARF exception handling: D63415: [AsmPrinter] Make the encoding of call sites in .gcc_except_table configurable.
Jun 17 2019, 4:55 AM · Restricted Project