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 (443 w, 5 d)

Recent Activity

Today

t.p.northover requested review of D100855: AArch64: support mixed-size vector fp <-> int conversions in GlobalISel..
Tue, Apr 20, 7:36 AM · Restricted Project
t.p.northover updated the diff for D100475: llvm-objdump: move SourcePrinter to shared file.

Thanks, this should now be just the NFC refactoring, with most clang-tidy/clang-format suggestions applied (I ignored the DWARF one for obvious reasons).

Tue, Apr 20, 4:29 AM · Restricted Project
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Ping.

Tue, Apr 20, 3:30 AM · Restricted Project
t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Ping.

Tue, Apr 20, 3:30 AM · Restricted Project
t.p.northover requested review of D100836: AArch64: expand G_DIVREM operations in GlobalISel.
Tue, Apr 20, 2:56 AM · Restricted Project

Wed, Apr 14

t.p.northover requested review of D100475: llvm-objdump: move SourcePrinter to shared file.
Wed, Apr 14, 5:46 AM · Restricted Project
t.p.northover committed rG6401b78ab3cf: SDAG: constant fold bf16 -> i16 casts (authored by t.p.northover).
SDAG: constant fold bf16 -> i16 casts
Wed, Apr 14, 3:28 AM

Tue, Apr 13

t.p.northover committed rG5e3d9fcc3a88: StackProtector: ensure protection does not interfere with tail call frame. (authored by t.p.northover).
StackProtector: ensure protection does not interfere with tail call frame.
Tue, Apr 13, 7:15 AM
t.p.northover closed D98701: StackProtector: insert check before `musttail` call..

Thanks Amara. Committed with a beefed up comment as 5e3d9fcc3a88.

Tue, Apr 13, 7:15 AM · Restricted Project

Tue, Apr 6

t.p.northover updated the diff for D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Added support for i386 (for the watch simulator). Mostly came for free but some slight issues around swiftself and CSRs.

Tue, Apr 6, 5:07 AM · Restricted Project

Thu, Apr 1

t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Ping.

Thu, Apr 1, 5:54 AM · Restricted Project
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Ping.

Thu, Apr 1, 5:54 AM · Restricted Project

Wed, Mar 31

t.p.northover accepted D99384: [AArch64] Avoid SCALAR_TO_VECTOR for single FP constant vector..

Looks like a good change to me.

Wed, Mar 31, 1:32 AM · Restricted Project

Fri, Mar 26

t.p.northover added inline comments to D99079: [ARM][AArch64] Require appropriate features for crypto algorithms.
Fri, Mar 26, 8:09 AM · Restricted Project, Restricted Project

Wed, Mar 24

t.p.northover requested review of D99261: AArch64: support bfloat extend and trunc.
Wed, Mar 24, 6:32 AM · Restricted Project

Tue, Mar 23

t.p.northover accepted D98794: [AArch64] Correctly align HFA arguments when passed on the stack.

I think this looks reasonable. Preserving Darwin is probably the safest choice, though I don't know if we actually rely on it. If the description is actually the commit message make sure it's updated before committing because this patch does in fact change the Clang side too.

Tue, Mar 23, 2:43 AM · Restricted Project, Restricted Project

Mon, Mar 22

t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Ping.

Mon, Mar 22, 2:14 AM · Restricted Project
t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Ping.

Mon, Mar 22, 2:14 AM · Restricted Project

Mar 17 2021

t.p.northover updated the diff for D98701: StackProtector: insert check before `musttail` call..

Fixed the issue in SelectionDAG too. Not quite identical there, but still fundamentally hinged on exactly where the check should be placed.

Mar 17 2021, 5:22 AM · Restricted Project

Mar 16 2021

t.p.northover planned changes to D98701: StackProtector: insert check before `musttail` call..

We've just discovered there are problems on the SDAG path too for guaranteed tail calls. I'll update the patch once I've got a fix ready.

Mar 16 2021, 9:07 AM · Restricted Project
t.p.northover requested review of D98701: StackProtector: insert check before `musttail` call..
Mar 16 2021, 6:00 AM · Restricted Project

Mar 8 2021

t.p.northover committed rGc4542005dae2: AArch64/MacOS: switch default CPU to apple-a13. (authored by t.p.northover).
AArch64/MacOS: switch default CPU to apple-a13.
Mar 8 2021, 7:47 AM

Mar 4 2021

t.p.northover accepted D97435: [Aarch64] Correct register class for pseudo instructions.

Thanks, looks good to me.

Mar 4 2021, 11:39 AM · Restricted Project
t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Ping.

Mar 4 2021, 1:54 AM · Restricted Project
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Ping.

Mar 4 2021, 1:54 AM · Restricted Project

Mar 2 2021

t.p.northover committed rG888c5c24cab6: AArch64: report fp16 arithmetic is present for apple-a11 CPU. (authored by t.p.northover).
AArch64: report fp16 arithmetic is present for apple-a11 CPU.
Mar 2 2021, 7:07 AM

Feb 26 2021

t.p.northover accepted D97510: [AArch64][Docs] Release notes 12.x on outline atomics.

I think this is fine.

Feb 26 2021, 5:16 AM · Restricted Project
t.p.northover accepted D97435: [Aarch64] Correct register class for pseudo instructions.

Looks reasonable to me. If you were really keen you could probably write a MIR test (it complains loudly when an instruction has the wrong regclass), but in reality I think it's unlikely to matter. This isn't exactly a high-traffic part of the backend.

Feb 26 2021, 3:11 AM · Restricted Project

Feb 25 2021

t.p.northover accepted D97233: Support `#pragma clang section` directives on MachO targets.

Thanks. I think it looks good too now.

Feb 25 2021, 3:04 AM · Restricted Project, Restricted Project
t.p.northover added inline comments to D61259: AArch64: support arm64_32, an ILP32 slice for watchOS..
Feb 25 2021, 2:16 AM · Restricted Project
t.p.northover committed rG201ada80ee15: AArch64: relax address-space assertion in FastISel. (authored by t.p.northover).
AArch64: relax address-space assertion in FastISel.
Feb 25 2021, 2:16 AM

Feb 24 2021

t.p.northover accepted D95179: [AArch64] Do not fold SP adjustments into pre-increment addr modes if it overflows the redzone..

Thanks. LGTM.

Feb 24 2021, 6:57 AM · Restricted Project
t.p.northover added inline comments to D97233: Support `#pragma clang section` directives on MachO targets.
Feb 24 2021, 6:53 AM · Restricted Project, Restricted Project
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Just a rebase really (minor comment & doc changes). Also ping.

Feb 24 2021, 5:59 AM · Restricted Project
t.p.northover updated the diff for D95044: IR+AArch64: add `swiftasync` function parameter attribute.
Feb 24 2021, 5:57 AM · Restricted Project
t.p.northover updated the diff for D95044: IR+AArch64: add `swiftasync` function parameter attribute.
Feb 24 2021, 5:56 AM · Restricted Project
t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

In this update:

Feb 24 2021, 5:55 AM · Restricted Project
t.p.northover updated the diff for D95443: IR/AArch64/X86: add "swifttailcc" calling convention..
Feb 24 2021, 5:53 AM · Restricted Project
t.p.northover updated the diff for D95443: IR/AArch64/X86: add "swifttailcc" calling convention..
Feb 24 2021, 5:51 AM · Restricted Project
t.p.northover added a comment to D95924: [Example][NFC} Add testcase for BrainF HelloWorld .

I doubt it. because when I run test files separately they are passing. The issue occurs when I merge them in a single file.

Feb 24 2021, 1:35 AM · Restricted Project

Feb 22 2021

t.p.northover added a comment to D95924: [Example][NFC} Add testcase for BrainF HelloWorld .

Please tell me what I am missing now?

Feb 22 2021, 2:24 AM · Restricted Project

Feb 17 2021

t.p.northover added a comment to D95924: [Example][NFC} Add testcase for BrainF HelloWorld .

The two programs are identical, right? If so, you can put more than one RUN line in a single file to test it. Then use FileCheck --check-prefix=EXEC %s, EXEC: Hello World!.

Feb 17 2021, 2:25 AM · Restricted Project
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Ping.

Feb 17 2021, 2:07 AM · Restricted Project
t.p.northover accepted D96825: [AArch64] Adding Neon Polynomial vadd Intrinsics.

Looks sensible to me.

Feb 17 2021, 2:00 AM · Restricted Project

Feb 12 2021

t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Spotted a couple of issues over the last week:

Feb 12 2021, 2:29 AM · Restricted Project
t.p.northover updated the diff for D95443: IR/AArch64/X86: add "swifttailcc" calling convention..
Feb 12 2021, 2:25 AM · Restricted Project

Feb 9 2021

t.p.northover added inline comments to D95655: [AArch64] Adding Neon Sm3 & Sm4 Intrinsics.
Feb 9 2021, 12:07 PM · Restricted Project, Restricted Project
t.p.northover accepted D96283: [DAGCombine] Do not remove masking argument to FP16_TO_FP for some targets.

Thanks. I think this looks like the best fix we can do now.

Feb 9 2021, 3:06 AM · Restricted Project, Restricted Project
t.p.northover added a comment to D96283: [DAGCombine] Do not remove masking argument to FP16_TO_FP for some targets.

We already seem to have shouldSignExtendTypeInLibCall (used in the actual ExpandLibCall this code gets to) and shouldExtendTypeInLibCall (used in another expander I didn't know about). Ideally that's where we'd fix this issue by getting the generic call lowerer to insert a zext (which may be folded again later, if it's a sound transformation). Unfortunately because we only have an i32 when the expansion happens I don't think that's possible.

Feb 9 2021, 1:57 AM · Restricted Project, Restricted Project

Feb 8 2021

t.p.northover committed rGc93d50dd7168: AArch64: use a constpool for blockaddress(...) on MachO (authored by t.p.northover).
AArch64: use a constpool for blockaddress(...) on MachO
Feb 8 2021, 7:13 AM
t.p.northover closed D85126: AArch64: use a constpool for blockaddress(...) on MachO.

Thanks Ahmed, committed as c93d50dd7168.

Feb 8 2021, 7:13 AM · Restricted Project
t.p.northover abandoned D92836: [AArch64] don't build out of line atomics on Darwin or Windows.
Feb 8 2021, 6:45 AM
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Ping.

Feb 8 2021, 6:45 AM · Restricted Project
t.p.northover updated the diff for D95443: IR/AArch64/X86: add "swifttailcc" calling convention..
  • Updated documentation as requested.
  • Changed CallSeq_start AArch64 operand so we don't reserve the stack space twice.
Feb 8 2021, 6:44 AM · Restricted Project

Feb 1 2021

t.p.northover added a comment to D95443: IR/AArch64/X86: add "swifttailcc" calling convention..

Of course, should have spotted that one.

Feb 1 2021, 4:58 AM · Restricted Project
t.p.northover updated the diff for D95443: IR/AArch64/X86: add "swifttailcc" calling convention..
Feb 1 2021, 4:57 AM · Restricted Project
t.p.northover accepted D76570: [AArch64] Homogeneous Prolog and Epilog for Size Optimization.

Thanks for applying the suggested fixes. I think I'm happy with it now.

Feb 1 2021, 4:51 AM · Restricted Project
t.p.northover committed rGc2b322fc19e8: GlobalISel: check type size before getZExtValue()ing it. (authored by t.p.northover).
GlobalISel: check type size before getZExtValue()ing it.
Feb 1 2021, 4:44 AM

Jan 29 2021

t.p.northover added a comment to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..

I think this looks good now, modulo Sjoerd's last comment.

Jan 29 2021, 2:00 AM · Restricted Project, Restricted Project

Jan 28 2021

t.p.northover added inline comments to D95044: IR+AArch64: add `swiftasync` function parameter attribute.
Jan 28 2021, 1:20 AM · Restricted Project
t.p.northover added a comment to D95179: [AArch64] Do not fold SP adjustments into pre-increment addr modes if it overflows the redzone..

Is there a check that this folding doesn't overrun a red-zone if it does exist? If not, fixing that could well lead to a more natural way to solve this (where the bounds being checked are just 0 if there's no red-zone).

Jan 28 2021, 1:17 AM · Restricted Project

Jan 26 2021

t.p.northover requested review of D95443: IR/AArch64/X86: add "swifttailcc" calling convention..
Jan 26 2021, 6:51 AM · Restricted Project

Jan 22 2021

t.p.northover requested review of D95228: Add swift_async_context parameter attribute mapping to IR equivalent.
Jan 22 2021, 6:24 AM

Jan 21 2021

t.p.northover updated the diff for D95044: IR+AArch64: add `swiftasync` function parameter attribute.
  1. Applied Kristof's FrameLowering suggestion.
  2. Added IR-level tests for the attribute I'd forgotten about.
Jan 21 2021, 3:14 AM · Restricted Project
t.p.northover added a comment to D95044: IR+AArch64: add `swiftasync` function parameter attribute.

Thanks for the questions. I'm quite fuzzy on the Swift side of this I'm afraid, so take my replies with a pinch of salt.

Jan 21 2021, 2:51 AM · Restricted Project

Jan 20 2021

t.p.northover requested review of D95044: IR+AArch64: add `swiftasync` function parameter attribute.
Jan 20 2021, 6:22 AM · Restricted Project

Jan 19 2021

t.p.northover added inline comments to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..
Jan 19 2021, 10:55 AM · Restricted Project, Restricted Project
t.p.northover committed rG6259fbd8b695: AArch64: add apple-a14 as a CPU (authored by t.p.northover).
AArch64: add apple-a14 as a CPU
Jan 19 2021, 6:05 AM

Jan 11 2021

t.p.northover added inline comments to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..
Jan 11 2021, 5:55 AM · Restricted Project, Restricted Project

Jan 5 2021

t.p.northover added a comment to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..

Nice! So iOS will benefit outline atomics too.

Jan 5 2021, 3:59 AM · Restricted Project, Restricted Project

Dec 21 2020

t.p.northover added a comment to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..

Outline atomics were added with gcc 9.3.1 and turned on by default in gcc 10.1. Consequently most of distributions had libgcc with outline atomics already.

Dec 21 2020, 1:37 AM · Restricted Project, Restricted Project

Dec 20 2020

t.p.northover added a comment to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..

Also, even on Linux it seems Clang is inclined to link against libgcc rather than libclang by default (at least that's what my Debian one does). When did these functions get into libgcc? I'm worried that a significant proportion of users there will find themselves having to add extra command-line options (whether disabling this or forcing libclang) to produce binaries.

Dec 20 2020, 8:47 AM · Restricted Project, Restricted Project
t.p.northover added a comment to D50010: [VNCoercion] Disallow coercion between different ni addrspaces.

Sorry, ignore that. Wrong review.

Dec 20 2020, 8:47 AM · Restricted Project, Restricted Project
t.p.northover added a comment to D50010: [VNCoercion] Disallow coercion between different ni addrspaces.

Also, even on Linux it seems Clang is inclined to link against libgcc rather than libclang by default (at least that's what my Debian one does). When did these functions get into libgcc? I'm worried that a significant proportion of users there will find themselves having to add extra command-line options (whether disabling this or forcing libclang) to produce binaries.

Dec 20 2020, 8:47 AM · Restricted Project, Restricted Project
t.p.northover added a comment to D93585: [AArch64][Clang][Linux] Enable out-of-line atomics by default..

As it stands this needs to be a platform-level change. The compiler-rt stuff may now compile outside Linux (thanks!), but the capability detection is still fundamentally Linux (and even glibc) only so nothing else would use it as intended.

Dec 20 2020, 3:00 AM · Restricted Project, Restricted Project

Dec 14 2020

t.p.northover added a comment to D91419: ARM-Darwin: keep the frame register reserved even if not updated..

Ping.

Dec 14 2020, 6:43 AM · Restricted Project

Dec 11 2020

t.p.northover accepted D92569: [AArch64] Lower calls with rv_marker attribute ..

I think this looks reasonable now.

Dec 11 2020, 6:23 AM · Restricted Project

Dec 10 2020

t.p.northover accepted D92930: [Clang] Add vcmla and rotated variants for Arm ACLE..

That's a nice improvement. Still LGTM.

Dec 10 2020, 8:29 AM · Restricted Project
t.p.northover accepted D92865: [AArch64] Don't try to compress jump tables if there are any inline asm instructions..

I think this is a reasonable change, inline asm is pretty rare.

Dec 10 2020, 1:08 AM · Restricted Project

Dec 9 2020

t.p.northover accepted D92929: [AArch64] Add aarch64_neon_vcmla{_rot{90,180,270}} intrinsics..

LGTM.

Dec 9 2020, 3:56 AM · Restricted Project
t.p.northover added a comment to D92930: [Clang] Add vcmla and rotated variants for Arm ACLE..

Looks fine to me except for one weird quirk that I don't think should be there.

Dec 9 2020, 3:56 AM · Restricted Project
t.p.northover committed rG45de42116e3f: AArch64: use correct operand for ubsantrap immediate. (authored by t.p.northover).
AArch64: use correct operand for ubsantrap immediate.
Dec 9 2020, 2:17 AM

Dec 8 2020

t.p.northover requested review of D92836: [AArch64] don't build out of line atomics on Darwin or Windows.
Dec 8 2020, 4:37 AM
t.p.northover requested review of D92834: [IR,AArch64] Add a new "ptrauth(...)" Constant to represent signed pointers.
Dec 8 2020, 4:30 AM · Restricted Project
t.p.northover closed D89959: UBSAN: emit distinctive traps in trapping mode.

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

c54d827fdb12..c5978f42ec8e  main -> main
Dec 8 2020, 2:29 AM · Restricted Project
t.p.northover committed rGc5978f42ec8e: UBSAN: emit distinctive traps (authored by t.p.northover).
UBSAN: emit distinctive traps
Dec 8 2020, 2:29 AM
t.p.northover added a comment to D85126: AArch64: use a constpool for blockaddress(...) on MachO.

Ping.

Dec 8 2020, 1:32 AM · Restricted Project

Dec 3 2020

t.p.northover added a comment to D91419: ARM-Darwin: keep the frame register reserved even if not updated..

Ping.

Dec 3 2020, 5:34 AM · Restricted Project
t.p.northover committed rG152df3add156: arm64: count Triple::aarch64_32 as an aarch64 target and enable leaf frame… (authored by t.p.northover).
arm64: count Triple::aarch64_32 as an aarch64 target and enable leaf frame…
Dec 3 2020, 3:10 AM
t.p.northover closed D91147: AArch64: classify Triple::aarch64_32 as AArch64.

Thanks Gerolf. Committed:

Dec 3 2020, 3:10 AM · Restricted Project

Nov 20 2020

t.p.northover added inline comments to D91512: [AArch64][Isel] Avoid implicit zext for SIGN_EXTEND_INREG ( TRUNCATE ).
Nov 20 2020, 1:44 AM · Restricted Project
t.p.northover added inline comments to D91512: [AArch64][Isel] Avoid implicit zext for SIGN_EXTEND_INREG ( TRUNCATE ).
Nov 20 2020, 1:38 AM · Restricted Project
t.p.northover added inline comments to D91512: [AArch64][Isel] Avoid implicit zext for SIGN_EXTEND_INREG ( TRUNCATE ).
Nov 20 2020, 1:26 AM · Restricted Project

Nov 17 2020

t.p.northover added inline comments to D91512: [AArch64][Isel] Avoid implicit zext for SIGN_EXTEND_INREG ( TRUNCATE ).
Nov 17 2020, 1:53 AM · Restricted Project

Nov 13 2020

t.p.northover requested review of D91419: ARM-Darwin: keep the frame register reserved even if not updated..
Nov 13 2020, 6:10 AM · Restricted Project
t.p.northover updated the diff for D91147: AArch64: classify Triple::aarch64_32 as AArch64.
Nov 13 2020, 2:41 AM · Restricted Project
t.p.northover added inline comments to D91147: AArch64: classify Triple::aarch64_32 as AArch64.
Nov 13 2020, 2:33 AM · Restricted Project

Nov 11 2020

t.p.northover added inline comments to D91157: [AArch64] Out-of-line atomics (-moutline-atomics) implementation..
Nov 11 2020, 5:55 AM · Restricted Project, Restricted Project
t.p.northover added inline comments to D76570: [AArch64] Homogeneous Prolog and Epilog for Size Optimization.
Nov 11 2020, 5:46 AM · Restricted Project

Nov 10 2020

t.p.northover added inline comments to D91157: [AArch64] Out-of-line atomics (-moutline-atomics) implementation..
Nov 10 2020, 6:42 AM · Restricted Project, Restricted Project