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 (500 w, 4 d)

Recent Activity

Today

t.p.northover committed rGc5e5cf125838: Test stackmap support for i128 (authored by vext01).
Test stackmap support for i128
Mon, May 23, 3:56 AM · Restricted Project, Restricted Project
t.p.northover accepted D126069: Test stackmap support for i128.

Seems reasonable to test what we can now, so I reckon this is fine.

Mon, May 23, 3:02 AM · Restricted Project, Restricted Project

Wed, May 18

t.p.northover committed rG04e5b7fd1774: AArch64: fall back to DWARF instead of crashing on weird .cfi directives (authored by t.p.northover).
AArch64: fall back to DWARF instead of crashing on weird .cfi directives
Wed, May 18, 3:43 AM · Restricted Project, Restricted Project
t.p.northover committed rG242961f23b4a: [llvm][fix-irreducible] ensure that loop subtree under child is correctly… (authored by sunziping2016).
[llvm][fix-irreducible] ensure that loop subtree under child is correctly…
Wed, May 18, 2:46 AM · Restricted Project, Restricted Project

Mon, May 16

t.p.northover committed rG1ddc6ab1a9c3: AArch64: support ISel for fence instructions (authored by t.p.northover).
AArch64: support ISel for fence instructions
Mon, May 16, 4:19 AM · Restricted Project, Restricted Project

Thu, May 12

t.p.northover committed rG7b53a45e14ad: Revert "Add an error message to the default SIGPIPE handler" (authored by t.p.northover).
Revert "Add an error message to the default SIGPIPE handler"
Thu, May 12, 12:31 AM · Restricted Project, Restricted Project
t.p.northover committed rGe845f899e607: Add an error message to the default SIGPIPE handler (authored by t.p.northover).
Add an error message to the default SIGPIPE handler
Thu, May 12, 12:00 AM · Restricted Project, Restricted Project

Tue, May 3

t.p.northover accepted D124607: Add an error message to the default SIGPIPE handler.

Apparently needed because tools like nm are specified to some degree by POSIX and we supply that on some platforms, so it seems reasonable to me.

Tue, May 3, 7:56 AM · Restricted Project, Restricted Project

Apr 11 2022

t.p.northover committed rG901831a4e615: Revert "AArch64: take compact unwind frame size from last CFI instruction." (authored by t.p.northover).
Revert "AArch64: take compact unwind frame size from last CFI instruction."
Apr 11 2022, 4:26 AM · Restricted Project, Restricted Project
t.p.northover committed rG9fe32ca6972e: AArch64: add nvcast patterns for v1f64 (authored by t.p.northover).
AArch64: add nvcast patterns for v1f64
Apr 11 2022, 4:25 AM · Restricted Project, Restricted Project
t.p.northover committed rG4120a3abdd02: AArch64: take compact unwind frame size from last CFI instruction. (authored by t.p.northover).
AArch64: take compact unwind frame size from last CFI instruction.
Apr 11 2022, 4:25 AM · Restricted Project, Restricted Project
t.p.northover committed rG6c85668d2804: Tail calls: look through AssertZExt to find register copy. (authored by t.p.northover).
Tail calls: look through AssertZExt to find register copy.
Apr 11 2022, 4:25 AM · Restricted Project, Restricted Project

Mar 26 2022

t.p.northover added a comment to D121017: [AArch64] Fallback to DWARF when trying to emit compact unwind info with multiple CFA offset adjustments.

I don't think this is the ideal fix. We don't do asynchronous unwind on Darwin, and for synchronous cases it looked to me like the final stack update was still correct. So rather than pessimizing lots and lots of functions' unwind tables (a significant size impact), I think it's better to simply disable the assertion: https://reviews.llvm.org/D121116 (I'll update it for the status quo with tests on Monday).

Mar 26 2022, 1:34 PM · Restricted Project, Restricted Project

Mar 11 2022

t.p.northover added a comment to rG81bff5e6ea27: InstCombine: add comment explaining malloc deletion. NFC..

but the compiler is not allowed to change the output if the program doesn't contain any UBs, right?

Mar 11 2022, 11:03 PM

Mar 8 2022

t.p.northover added a comment to rG81bff5e6ea27: InstCombine: add comment explaining malloc deletion. NFC..

For context, we've got (or at least had) a similar test and at one time I thought no and tried to fix it (which is where this commit came from): https://reviews.llvm.org/D54533. Now, I agree with the comment and view the test as pathological.

Mar 8 2022, 2:28 AM

Mar 7 2022

t.p.northover requested review of D121116: AArch64: take compact unwind frame size from last CFI instruction..
Mar 7 2022, 7:16 AM · Restricted Project, Restricted Project

Mar 4 2022

t.p.northover committed rG4f637c30e1cd: [tests][Driver] Pass an empty sysroot for `DEFAULT_SYSROOT` builds (authored by t.p.northover).
[tests][Driver] Pass an empty sysroot for `DEFAULT_SYSROOT` builds
Mar 4 2022, 1:02 AM · Restricted Project

Mar 3 2022

t.p.northover requested review of D120895: Tail calls: look through AssertZExt to find register copy..
Mar 3 2022, 5:27 AM · Restricted Project, Restricted Project

Mar 1 2022

t.p.northover accepted D120706: [AArch64] Use first op of FADDPv* instead of implicit def..

Looks like a sensible change to me, but could you commit it with a small comment explaining? I think I remember puzzling over these patterns a little when someone asked about them, and with this change the actual dataflow we care about is even less apparent.

Mar 1 2022, 2:56 AM · Restricted Project, Restricted Project

Feb 23 2022

t.p.northover committed rG5658d869ff4c: AArch64: clamp UBFX high-bit to 32-bits (authored by t.p.northover).
AArch64: clamp UBFX high-bit to 32-bits
Feb 23 2022, 4:49 AM

Feb 22 2022

t.p.northover added a comment to D111128: TailDuplication: do not remove trivial PHIs from addr-taken blocks..

Ping.

Feb 22 2022, 1:49 AM · Restricted Project

Feb 16 2022

t.p.northover committed rG4b120c8d633f: Compiler-rt: build fp_mode.c for macho_embedded variants too. (authored by t.p.northover).
Compiler-rt: build fp_mode.c for macho_embedded variants too.
Feb 16 2022, 5:37 AM

Feb 15 2022

t.p.northover added a comment to D119788: [AArch64] Add support for -march=native for Apple M1 CPU.

Sorry, that was an old xnu version, the newest one is https://opensource.apple.com/source/xnu/xnu-7195.81.3/osfmk/mach/machine.h.auto.html which has

Feb 15 2022, 2:02 AM · Restricted Project, Restricted Project, Restricted Project
t.p.northover added a comment to D119788: [AArch64] Add support for -march=native for Apple M1 CPU.

Things have moved on since the ARM and (especially) PPC variants of that function were written. That field (despite the name) is now more of an ABI tag and not going to be updated with each CPU.

Feb 15 2022, 1:50 AM · Restricted Project, Restricted Project, Restricted Project

Feb 14 2022

t.p.northover committed rGa87d3ba61c64: Reapply: StackProtector: ignore debug insts when splitting blocks. (authored by t.p.northover).
Reapply: StackProtector: ignore debug insts when splitting blocks.
Feb 14 2022, 2:58 AM

Feb 11 2022

t.p.northover added a comment to rG7605ca85f1a8: StackProtector: ignore debug insts when splitting blocks..

Hi Paul,

Feb 11 2022, 10:08 AM
t.p.northover added a reverting change for rG7605ca85f1a8: StackProtector: ignore debug insts when splitting blocks.: rG2ba06bed6b1e: Revert "StackProtector: ignore debug insts when splitting blocks.".
Feb 11 2022, 10:07 AM
t.p.northover committed rG2ba06bed6b1e: Revert "StackProtector: ignore debug insts when splitting blocks." (authored by t.p.northover).
Revert "StackProtector: ignore debug insts when splitting blocks."
Feb 11 2022, 10:07 AM
t.p.northover closed D119434: StackProtector: ignore debug insts when splitting blocks..

To github.com:llvm/llvm-project.git

5d639034652d..7605ca85f1a8  main -> main
Feb 11 2022, 2:14 AM · Restricted Project
t.p.northover committed rG7605ca85f1a8: StackProtector: ignore debug insts when splitting blocks. (authored by t.p.northover).
StackProtector: ignore debug insts when splitting blocks.
Feb 11 2022, 2:14 AM

Feb 10 2022

t.p.northover requested review of D119434: StackProtector: ignore debug insts when splitting blocks..
Feb 10 2022, 6:13 AM · Restricted Project

Feb 9 2022

t.p.northover added a reverting change for rG3fc40b6e6628: X86: gate all vmovsh instructions on FP16 support.: rG8366e182d5f1: Revert "X86: gate all vmovsh instructions on FP16 support.".
Feb 9 2022, 4:34 AM
t.p.northover committed rG8366e182d5f1: Revert "X86: gate all vmovsh instructions on FP16 support." (authored by t.p.northover).
Revert "X86: gate all vmovsh instructions on FP16 support."
Feb 9 2022, 4:34 AM
t.p.northover committed rG00e372137c8a: AArch64: do not use xzr for ldxp -> stxp dataflow. (authored by t.p.northover).
AArch64: do not use xzr for ldxp -> stxp dataflow.
Feb 9 2022, 4:29 AM
t.p.northover committed rG3fc40b6e6628: X86: gate all vmovsh instructions on FP16 support. (authored by t.p.northover).
X86: gate all vmovsh instructions on FP16 support.
Feb 9 2022, 4:29 AM

Feb 3 2022

t.p.northover added a comment to D118759: [compiler-rt][Darwin] Add arm64 to simulator platforms.

I'm afraid I've had to revert this (with becb29aeb6a2) because it was causing CI failures: https://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-expensive/21780/console. It looks like older Xcodes didn't allow arm64 builds in the simulator SDK (because M1 Macs were secret at the time I assume). It might be possible to add logic to detect this, I'll see what we've got internally.

Feb 3 2022, 1:45 AM · Restricted Project
t.p.northover added a reverting change for rGa8e5ce76b475: [compiler-rt][Darwin] Add arm64 to simulator platforms: rGbecb29aeb6a2: Revert "[compiler-rt][Darwin] Add arm64 to simulator platforms".
Feb 3 2022, 1:43 AM
t.p.northover committed rGbecb29aeb6a2: Revert "[compiler-rt][Darwin] Add arm64 to simulator platforms" (authored by t.p.northover).
Revert "[compiler-rt][Darwin] Add arm64 to simulator platforms"
Feb 3 2022, 1:43 AM
t.p.northover added a reverting change for D118759: [compiler-rt][Darwin] Add arm64 to simulator platforms: rGbecb29aeb6a2: Revert "[compiler-rt][Darwin] Add arm64 to simulator platforms".
Feb 3 2022, 1:43 AM · Restricted Project

Feb 2 2022

t.p.northover accepted D118759: [compiler-rt][Darwin] Add arm64 to simulator platforms.

Looks like it matches what we build with Xcode so I think this is OK. I dread to think what Xcode does for watchossim does though, that should totally be arm64_32, but it's not.

Feb 2 2022, 1:31 AM · Restricted Project

Jan 18 2022

t.p.northover committed rG51f743db08f3: TableGen: sort SearchableTable emission order by fields, not top-level name (authored by t.p.northover).
TableGen: sort SearchableTable emission order by fields, not top-level name
Jan 18 2022, 5:00 AM
t.p.northover closed D113002: TableGen: sort SearchableTable emission order by fields, not top-level name.
Jan 18 2022, 5:00 AM · Restricted Project
t.p.northover accepted D113002: TableGen: sort SearchableTable emission order by fields, not top-level name.

Thanks, I've committed it with the updated tests you suggested as 51f743db. Well, I think it's probably still worth checking we can assemble PRBAR_EL1 etc, even if they're not printed out again the same so I left those in for now.

Jan 18 2022, 5:00 AM · Restricted Project

Jan 11 2022

t.p.northover committed rG0b5b35fdbdbf: ARM: make FastISel & GISel pass -1 to ADJCALLSTACKUP to signal no callee pop. (authored by t.p.northover).
ARM: make FastISel & GISel pass -1 to ADJCALLSTACKUP to signal no callee pop.
Jan 11 2022, 3:31 AM
t.p.northover closed D116805: ARM: make FastISel & GISel pass -1 to ADJCALLSTACKUP to signal no callee pop..

Thanks. Committed as 0b5b35fdbdbf.

Jan 11 2022, 3:31 AM · Restricted Project

Jan 10 2022

t.p.northover closed D113987: AArch64: don't claim to preserve registers used by the prologue for `cxx_fast_tlscc`.

Thanks. Committed as 581e85.

Jan 10 2022, 4:36 AM · Restricted Project
t.p.northover committed rG581e855623c2: AArch64: don't claim to preserve registers used by prologue code (authored by t.p.northover).
AArch64: don't claim to preserve registers used by prologue code
Jan 10 2022, 4:27 AM
t.p.northover added a comment to D111128: TailDuplication: do not remove trivial PHIs from addr-taken blocks..

Ping.

Jan 10 2022, 3:07 AM · Restricted Project

Jan 7 2022

t.p.northover requested review of D116805: ARM: make FastISel & GISel pass -1 to ADJCALLSTACKUP to signal no callee pop..
Jan 7 2022, 5:52 AM · Restricted Project

Dec 16 2021

t.p.northover added a comment to D115672: Teach the backend to make references to swift_async_extendedFramePointerFlags weak if it emits it.

Thanks. LGTM.

Dec 16 2021, 5:09 AM · Restricted Project

Dec 15 2021

t.p.northover accepted D115672: Teach the backend to make references to swift_async_extendedFramePointerFlags weak if it emits it.

Some minor issues, but other than that I think it looks OK.

Dec 15 2021, 7:09 AM · Restricted Project

Nov 16 2021

t.p.northover requested review of D113987: AArch64: don't claim to preserve registers used by the prologue for `cxx_fast_tlscc`.
Nov 16 2021, 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