Page MenuHomePhabricator

t.p.northover (Tim Northover)
Lord High Supreme Bullshitter

Projects

User does not belong to any projects.

User Details

User Since
Oct 18 2012, 4:53 AM (476 w, 6 d)

Recent Activity

Tue, Nov 16

t.p.northover requested review of D113987: AArch64: don't claim to preserve registers used by the prologue for `cxx_fast_tlscc`.
Tue, Nov 16, 4:36 AM · Restricted Project

Nov 4 2021

t.p.northover closed D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`.

Thanks John, committed as 3d39612b3dd3.

Nov 4 2021, 3:25 AM · Restricted Project
t.p.northover committed rG3d39612b3dd3: Coroutines: don't infer function attrs before lowering (authored by t.p.northover).
Coroutines: don't infer function attrs before lowering
Nov 4 2021, 3:24 AM

Nov 3 2021

t.p.northover added a comment to D110069: AArch64: use `CAS` instead of `LDX`/`STX` for more ops if available.

Ping.

Nov 3 2021, 2:27 AM · Restricted Project
t.p.northover added a comment to D111128: TailDuplication: do not remove trivial PHIs from addr-taken blocks..

Ping.

Nov 3 2021, 2:27 AM · Restricted Project
t.p.northover added a comment to D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`.

Ping.

Nov 3 2021, 2:27 AM · Restricted Project

Nov 2 2021

t.p.northover requested review of D113002: TableGen: sort SearchableTable emission order by fields, not top-level name.
Nov 2 2021, 4:22 AM · Restricted Project

Oct 25 2021

t.p.northover committed rGf9089accbac1: CodeGenPrep: remove all copies of GEP from list if there are duplicates. (authored by t.p.northover).
CodeGenPrep: remove all copies of GEP from list if there are duplicates.
Oct 25 2021, 6:00 AM
t.p.northover added a comment to D110069: AArch64: use `CAS` instead of `LDX`/`STX` for more ops if available.

Ping.

Oct 25 2021, 4:10 AM · Restricted Project
t.p.northover added a comment to D111128: TailDuplication: do not remove trivial PHIs from addr-taken blocks..

Ping.

Oct 25 2021, 4:10 AM · Restricted Project

Oct 22 2021

t.p.northover updated the diff for D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`.

Thanks for your thoughts too John, I've implemented your suggestion instead of the ret undef path I was thinking about.

Oct 22 2021, 1:18 AM · Restricted Project

Oct 20 2021

t.p.northover added a reviewer for D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`: rjmccall.
Oct 20 2021, 3:09 AM · Restricted Project
t.p.northover added a comment to D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`.

I've looked into this some more, and the return inserted by @llvm.coro.end is not necessarily representable in this function. If it's a @llvm.coro.id.retcon.once coroutine then the return is always a ret void, regardless of this function's prototype.

Oct 20 2021, 3:08 AM · Restricted Project

Oct 5 2021

t.p.northover requested review of D111128: TailDuplication: do not remove trivial PHIs from addr-taken blocks..
Oct 5 2021, 2:29 AM · Restricted Project
t.p.northover committed rG5f65ee260d78: AArch64+GISel: legalize vector remainder operations. (authored by t.p.northover).
AArch64+GISel: legalize vector remainder operations.
Oct 5 2021, 2:20 AM
t.p.northover closed D110329: AArch64+GISel: support REM functions for more types..

Thanks, pushed as 5f65ee260d78.

Oct 5 2021, 2:20 AM · Restricted Project

Oct 4 2021

t.p.northover added a comment to D110069: AArch64: use `CAS` instead of `LDX`/`STX` for more ops if available.

Ping.

Oct 4 2021, 7:36 AM · Restricted Project

Sep 23 2021

t.p.northover requested review of D110329: AArch64+GISel: support REM functions for more types..
Sep 23 2021, 6:14 AM · Restricted Project

Sep 22 2021

t.p.northover committed rG3a00e58c2fca: AArch64: use indivisible cmpxchg for 128-bit atomic loads at O0 (authored by t.p.northover).
AArch64: use indivisible cmpxchg for 128-bit atomic loads at O0
Sep 22 2021, 6:21 AM

Sep 20 2021

t.p.northover requested review of D110069: AArch64: use `CAS` instead of `LDX`/`STX` for more ops if available.
Sep 20 2021, 6:27 AM · Restricted Project
t.p.northover committed rG13aa102e0769: AArch64: use ldp/stp for 128-bit atomic load/store in v.84 onwards (authored by t.p.northover).
AArch64: use ldp/stp for 128-bit atomic load/store in v.84 onwards
Sep 20 2021, 1:50 AM
t.p.northover closed D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.

Thanks. Committed as 13aa102e0769.

Sep 20 2021, 1:50 AM · Restricted Project

Sep 16 2021

t.p.northover updated the diff for D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.
Sep 16 2021, 5:59 AM · Restricted Project
t.p.northover updated the diff for D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.
  • Added tests.
  • Switched to existing SDAG LDP/STP route for volatiles.
  • Simplified GISel path with matching expressions.
  • Think I fixed everything else mentioned.
Sep 16 2021, 5:48 AM · Restricted Project
t.p.northover added inline comments to D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.
Sep 16 2021, 5:12 AM · Restricted Project
t.p.northover added inline comments to D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.
Sep 16 2021, 4:59 AM · Restricted Project

Sep 15 2021

t.p.northover updated the diff for D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.

Added separate feature to control it (named from ARMARM), since it's optional from v8.2 onwards.

Sep 15 2021, 7:04 AM · Restricted Project
t.p.northover requested review of D109827: AArch64: use ldp/stp for 128-bit atomic load/store with v8.4.
Sep 15 2021, 7:04 AM · Restricted Project

Sep 14 2021

t.p.northover committed rGf28740541942: AArch64: fix indentation of ProcAppleA14. NFC. (authored by t.p.northover).
AArch64: fix indentation of ProcAppleA14. NFC.
Sep 14 2021, 2:04 AM

Sep 13 2021

t.p.northover committed rG5d070c8259ac: SwiftAsync: use runtime-provided flag for extended frame if back-deploying (authored by t.p.northover).
SwiftAsync: use runtime-provided flag for extended frame if back-deploying
Sep 13 2021, 5:55 AM
t.p.northover closed D109218: SwiftAsync: use runtime-provided flag for extended frame if back-deploying.

Thanks. Pushed as 5d070c8259a.

Sep 13 2021, 5:54 AM · Restricted Project

Sep 3 2021

t.p.northover added a comment to D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`.

Ping.

Sep 3 2021, 3:00 AM · Restricted Project
t.p.northover abandoned D108814: InstCombine: avoid non-reducing xor combine.

Thanks for that fix, sorry I was silent.

Sep 3 2021, 2:59 AM · Restricted Project
t.p.northover requested review of D109218: SwiftAsync: use runtime-provided flag for extended frame if back-deploying.
Sep 3 2021, 2:50 AM · Restricted Project

Aug 27 2021

t.p.northover requested review of D108814: InstCombine: avoid non-reducing xor combine.
Aug 27 2021, 3:38 AM · Restricted Project

Aug 20 2021

t.p.northover committed rG3d41ef68e7ee: AArch64: don't form indexed paired ops if base reg overlaps operands. (authored by t.p.northover).
AArch64: don't form indexed paired ops if base reg overlaps operands.
Aug 20 2021, 3:39 AM

Aug 19 2021

t.p.northover committed rGedab411ee6cc: AArch64: copy all parts of the mem operand across when combining a store (authored by t.p.northover).
AArch64: copy all parts of the mem operand across when combining a store
Aug 19 2021, 10:27 AM

Aug 18 2021

t.p.northover committed rG8eb054a87df2: AArch64: compare correct type for multi-valued SDNode. (authored by t.p.northover).
AArch64: compare correct type for multi-valued SDNode.
Aug 18 2021, 1:35 AM

Aug 16 2021

t.p.northover requested review of D108122: FunctionAttrs: do not mark coroutines with odd return path `noreturn`.
Aug 16 2021, 4:59 AM · Restricted Project

Aug 10 2021

t.p.northover closed D107443: AArch64: support @llvm.va_copy in GISel.

Thanks, committed as 5ad086089962.

Aug 10 2021, 5:11 AM · Restricted Project
t.p.northover committed rG5ad086089962: AArch64: support @llvm.va_copy in GISel (authored by t.p.northover).
AArch64: support @llvm.va_copy in GISel
Aug 10 2021, 5:11 AM

Aug 9 2021

t.p.northover updated the diff for D107443: AArch64: support @llvm.va_copy in GISel.

Adopted suggested changes. The align one didn't actually change the MIR output unfortunately so I don't tihnk it's really testable.

Aug 9 2021, 5:54 AM · Restricted Project

Aug 4 2021

t.p.northover requested review of D107443: AArch64: support @llvm.va_copy in GISel.
Aug 4 2021, 4:12 AM · Restricted Project
t.p.northover committed rG13e145fe76c4: X86: add test for realignment fix committed earlier. (authored by t.p.northover).
X86: add test for realignment fix committed earlier.
Aug 4 2021, 4:10 AM
t.p.northover committed rGd7b0e5525a4e: X86: fix frame offset calculation with mandatory tail calls (authored by t.p.northover).
X86: fix frame offset calculation with mandatory tail calls
Aug 4 2021, 2:03 AM
t.p.northover closed D106444: X86: fix frame offset calculation with mandatory tail calls.
Aug 4 2021, 2:03 AM · Restricted Project
t.p.northover accepted D106444: X86: fix frame offset calculation with mandatory tail calls.

Thanks Gerolf, committed as d7b0e5525a4e.

Aug 4 2021, 2:03 AM · Restricted Project

Aug 3 2021

t.p.northover added a comment to D107196: [AArch64InstPrinter] Change printAddSubImm to only add imm value comment when shifted.

Consider committing the test update separately from the code patch, so that the functional change has very few lines of update.

Aug 3 2021, 1:21 AM · Restricted Project

Jul 26 2021

t.p.northover committed rGa487a49acc5a: AArch64: support i128 (& larger) returns in GlobalISel (authored by t.p.northover).
AArch64: support i128 (& larger) returns in GlobalISel
Jul 26 2021, 6:17 AM
t.p.northover closed D106544: AArch6+GISel: support larger return types like i128.

Thanks. Committed as a487a49acc5a.

Jul 26 2021, 6:17 AM · Restricted Project

Jul 22 2021

t.p.northover requested review of D106544: AArch6+GISel: support larger return types like i128.
Jul 22 2021, 6:31 AM · Restricted Project
t.p.northover added inline comments to D106444: X86: fix frame offset calculation with mandatory tail calls.
Jul 22 2021, 1:22 AM · Restricted Project

Jul 21 2021

t.p.northover requested review of D106444: X86: fix frame offset calculation with mandatory tail calls.
Jul 21 2021, 7:22 AM · Restricted Project
t.p.northover closed D106142: AArch64: support 8 & 16-bit atomic operations in GlobalISel.

Thanks Jessica, committed as 291e0daa6.

Jul 21 2021, 1:36 AM · Restricted Project
t.p.northover closed D105548: ARM: don't return by popping PC if we have to adjust the stack afterwards..

Thanks Gerolf, committed as 19d2e42be2cd.

Jul 21 2021, 1:35 AM · Restricted Project
t.p.northover committed rG291e0daa6ed6: AArch64: support 8 & 16-bit atomic operations in GlobalISel (authored by t.p.northover).
AArch64: support 8 & 16-bit atomic operations in GlobalISel
Jul 21 2021, 1:35 AM
t.p.northover committed rG19d2e42be2cd: ARM: don't return by popping PC if we have to adjust the stack afterwards. (authored by t.p.northover).
ARM: don't return by popping PC if we have to adjust the stack afterwards.
Jul 21 2021, 1:35 AM

Jul 16 2021

t.p.northover requested review of D106142: AArch64: support 8 & 16-bit atomic operations in GlobalISel.
Jul 16 2021, 4:08 AM · Restricted Project

Jul 15 2021

t.p.northover committed rGf24335c69ea3: MachO: fix Clang test broken by dropping private labels in LLVM. (authored by t.p.northover).
MachO: fix Clang test broken by dropping private labels in LLVM.
Jul 15 2021, 7:05 AM
t.p.northover closed D105975: MachO: don't emit L... private symbols in do_not_dead_strip sections..

Thanks. Committed as 5d7632ee72c5.

Jul 15 2021, 6:41 AM · Restricted Project
t.p.northover committed rG5d7632ee72c5: MachO: don't emit L... private symbols in do_not_dead_strip sections. (authored by t.p.northover).
MachO: don't emit L... private symbols in do_not_dead_strip sections.
Jul 15 2021, 6:41 AM

Jul 14 2021

t.p.northover committed rGb18bda67915c: ARM: reuse existing libcall global variable if possible. (authored by t.p.northover).
ARM: reuse existing libcall global variable if possible.
Jul 14 2021, 6:15 AM
t.p.northover added a comment to D105548: ARM: don't return by popping PC if we have to adjust the stack afterwards..

Ping.

Jul 14 2021, 5:58 AM · Restricted Project
t.p.northover requested review of D105975: MachO: don't emit L... private symbols in do_not_dead_strip sections..
Jul 14 2021, 5:57 AM · Restricted Project

Jul 13 2021

t.p.northover committed rG85cb4f9904e9: Support: reduce stack used in default size test. (authored by t.p.northover).
Support: reduce stack used in default size test.
Jul 13 2021, 3:24 AM
t.p.northover closed D105027: AArch64: allocate 4-byte slot for arm64_32 pointers during tail call..

Thanks, 7802f62b3f2c with a better test.

Jul 13 2021, 3:10 AM · Restricted Project
t.p.northover committed rG7802f62b3f2c: AArch64: use 4-byte slots for arm64_32 pointers in a tail call (authored by t.p.northover).
AArch64: use 4-byte slots for arm64_32 pointers in a tail call
Jul 13 2021, 3:10 AM

Jul 9 2021

t.p.northover committed rG0c39f82f0b3e: [Support] reorder Threading includes to avoid conflict with FreeBSD headers (authored by t.p.northover).
[Support] reorder Threading includes to avoid conflict with FreeBSD headers
Jul 9 2021, 2:41 AM

Jul 8 2021

t.p.northover committed rG48c68a630e06: Recommit: Support: add llvm::thread class that supports specifying stack size. (authored by t.p.northover).
Recommit: Support: add llvm::thread class that supports specifying stack size.
Jul 8 2021, 8:22 AM
t.p.northover committed rG2bf5e8d953ed: Revert "Support: add llvm::thread class that supports specifying stack size." (authored by t.p.northover).
Revert "Support: add llvm::thread class that supports specifying stack size."
Jul 8 2021, 7:02 AM
t.p.northover committed rG727e1c9be3a5: Support: add llvm::thread class that supports specifying stack size. (authored by t.p.northover).
Support: add llvm::thread class that supports specifying stack size.
Jul 8 2021, 6:52 AM
t.p.northover closed D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.

Thanks Duncan, committed as 727e1c9be3a5

Jul 8 2021, 6:52 AM · Restricted Project, Restricted Project
t.p.northover added inline comments to D94097: [AArch64] Legalize MVT::i64x8 in DAG isel lowering..
Jul 8 2021, 2:30 AM · Restricted Project

Jul 7 2021

t.p.northover requested review of D105548: ARM: don't return by popping PC if we have to adjust the stack afterwards..
Jul 7 2021, 4:58 AM · Restricted Project

Jul 6 2021

t.p.northover added a comment to D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.

Ping.

Jul 6 2021, 9:52 AM · Restricted Project, Restricted Project

Jun 29 2021

t.p.northover added a comment to rGd88f96dff3f1: ARM: support mandatory tail calls for tailcc & swifttailcc.

Should be fixed now by c82957e79236. Thanks for your patience.

Jun 29 2021, 6:25 AM
t.p.northover committed rGc82957e79236: ARM: fix vacuously true assertion to actually check what it should. NFC. (authored by t.p.northover).
ARM: fix vacuously true assertion to actually check what it should. NFC.
Jun 29 2021, 6:24 AM

Jun 28 2021

t.p.northover requested review of D105027: AArch64: allocate 4-byte slot for arm64_32 pointers during tail call..
Jun 28 2021, 6:56 AM · Restricted Project

Jun 20 2021

t.p.northover added a comment to rG9ff2eb1ea596: SwiftTailCC: teach verifier musttail rules applicable to this CC..

There was a little discussion in https://reviews.llvm.org/D102612, though if you have any suggestions I'm obviously happy to rework it now. I'll also try to remember to include you if and when something similar comes up again.

Jun 20 2021, 8:43 AM

Jun 16 2021

t.p.northover added a comment to rGd88f96dff3f1: ARM: support mandatory tail calls for tailcc & swifttailcc.

Sorry about the late reply, I’m on a pretty remote holiday in the Outer
Hebrides. Thanks for pointing out the issue, it’s clearly a wrong
assertion. I’ll make sure the underlying code is right and update it first
thing when I get back to civilization.

Jun 16 2021, 3:09 AM

Jun 4 2021

t.p.northover closed D102474: AArch64: support atomic load/store in GISel.

Thanks, committed as b16ddd03753d.

Jun 4 2021, 1:46 AM · Restricted Project
t.p.northover committed rGb16ddd03753d: AArch64: support atomic zext/sextloads (authored by t.p.northover).
AArch64: support atomic zext/sextloads
Jun 4 2021, 1:46 AM

Jun 1 2021

t.p.northover added inline comments to D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.
Jun 1 2021, 6:35 AM · Restricted Project, Restricted Project
t.p.northover updated the diff for D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.
  • Add llvm::thread for all potential platforms, allowing stack size to be specified.
  • llvm::thread based on the Threading.inc where possible, else std::thread, else in-thread synchronous execution (with progressively more failures).
  • Remove llvm_execute_on_thread* in favour of this new llvm::thread.
Jun 1 2021, 6:33 AM · Restricted Project, Restricted Project

May 28 2021

t.p.northover closed D95228: Add swift_async_context parameter attribute mapping to IR equivalent.

Thanks, committed as e94fada045fe with the extra tests.

May 28 2021, 4:31 AM
t.p.northover committed rGe94fada045fe: SwiftAsync: add Clang attribute to apply the LLVM `swiftasync` one. (authored by t.p.northover).
SwiftAsync: add Clang attribute to apply the LLVM `swiftasync` one.
May 28 2021, 4:31 AM
t.p.northover updated the diff for D102474: AArch64: support atomic load/store in GISel.
May 28 2021, 3:50 AM · Restricted Project
t.p.northover added inline comments to D102474: AArch64: support atomic load/store in GISel.
May 28 2021, 3:50 AM · Restricted Project
t.p.northover added a comment to D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.

I guess one option would be to never use std::thread, and repurpose the guts of llvm_execute_on_thread_impl to implement a cross-platform llvm::thread that allows specifying the stack size as an optional constructor parameter (and then change llvm_execute_on_thread to use llvm::thread). WDYT?

May 28 2021, 3:27 AM · Restricted Project, Restricted Project
t.p.northover closed D102613: ARM: support mandatory tail calls.

Thanks Jessica, committed as d88f96df (with the -1 sentinel).

May 28 2021, 3:13 AM · Restricted Project
t.p.northover closed D102612: SwiftTailCC: teach verifier musttail rules applicable to this CC..

Thanks Eli, committed as 9ff2eb1ea596.

May 28 2021, 3:12 AM · Restricted Project
t.p.northover committed rG9ff2eb1ea596: SwiftTailCC: teach verifier musttail rules applicable to this CC. (authored by t.p.northover).
SwiftTailCC: teach verifier musttail rules applicable to this CC.
May 28 2021, 3:12 AM
t.p.northover committed rGd88f96dff3f1: ARM: support mandatory tail calls for tailcc & swifttailcc (authored by t.p.northover).
ARM: support mandatory tail calls for tailcc & swifttailcc
May 28 2021, 3:12 AM
t.p.northover accepted D103284: [AArch64][RISCV] Make sure isel correctly honors failure orderings..

LGTM.

May 28 2021, 3:05 AM · Restricted Project

May 26 2021

t.p.northover updated the diff for D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.

Actual main thread stack size is 8MB, but I'd accidentally implemented 2MB originally.

May 26 2021, 7:07 AM · Restricted Project, Restricted Project
t.p.northover requested review of D103165: Threading: use independent llvm::thread implementation on Apple platforms to increase stack size.
May 26 2021, 7:06 AM · Restricted Project, Restricted Project
t.p.northover committed rG8c5ac18d7165: AArch64: support post-indexed stores to bfloat types. (authored by t.p.northover).
AArch64: support post-indexed stores to bfloat types.
May 26 2021, 2:36 AM

May 25 2021

t.p.northover updated the diff for D102612: SwiftTailCC: teach verifier musttail rules applicable to this CC..

Added test for sret promotion case the verifier can't handle.

May 25 2021, 6:13 AM · Restricted Project

May 21 2021

t.p.northover updated the diff for D102612: SwiftTailCC: teach verifier musttail rules applicable to this CC..

Add error message to x86 backend if it can't honour a musttail call. It seems from the (presumably original) musttail.ll test that it's intended to override the disable-tail-calls function attribute, so I had to teach SelectionDAGBuilder about that too.

May 21 2021, 4:52 AM · Restricted Project
t.p.northover added inline comments to D102612: SwiftTailCC: teach verifier musttail rules applicable to this CC..
May 21 2021, 4:50 AM · Restricted Project