Page MenuHomePhabricator

john.brawn (John Brawn)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 12 2015, 7:44 AM (292 w, 3 d)

Recent Activity

Mon, Sep 7

john.brawn accepted D85956: [AARCH64][RegisterCoalescer] clang miscompiles zero-extension to long long.

LGTM.

Mon, Sep 7, 9:34 AM · Restricted Project

Thu, Sep 3

john.brawn committed rGdb574fc7ba2a: [libc++] Make ext-int.verify.cpp test compatible with c++03 (authored by john.brawn).
[libc++] Make ext-int.verify.cpp test compatible with c++03
Thu, Sep 3, 10:19 AM

Wed, Sep 2

john.brawn added inline comments to D85956: [AARCH64][RegisterCoalescer] clang miscompiles zero-extension to long long.
Wed, Sep 2, 9:56 AM · Restricted Project
john.brawn accepted D86091: [cmake] Fix build of attribute plugin example on Windows.

LGTM (looks like the other example plugins just use PRIVATE as well).

Wed, Sep 2, 9:47 AM · Restricted Project

Jul 15 2020

john.brawn committed rG20854d85e14c: [DSE,MSSA] Recognise init_trampoline in getLocForWriteEx (authored by john.brawn).
[DSE,MSSA] Recognise init_trampoline in getLocForWriteEx
Jul 15 2020, 4:19 AM
john.brawn closed D83783: [DSE,MSSA] Recognise init_trampoline in getLocForWriteEx.
Jul 15 2020, 4:19 AM · Restricted Project

Jul 14 2020

Herald added a project to D83783: [DSE,MSSA] Recognise init_trampoline in getLocForWriteEx: Restricted Project.
Jul 14 2020, 8:47 AM · Restricted Project

Jul 3 2020

john.brawn reopened D82651: [GlobalISel][InlineAsm] Add support for matching input constraints.

This is causing libcxx test failures in AArch64 -O0. Reduced testcase (the inline asm ultimately comes from DoNotOptimize in libcxx/test/support/test_macros.h):

Jul 3 2020, 6:26 AM · Restricted Project

Jun 29 2020

john.brawn committed rGce1fa201af77: [Driver] When forcing a crash print the bug report message (authored by john.brawn).
[Driver] When forcing a crash print the bug report message
Jun 29 2020, 5:22 AM
john.brawn closed D81672: [Driver] When forcing a crash print the bug report message.
Jun 29 2020, 5:22 AM · Restricted Project, Restricted Project

Jun 26 2020

john.brawn updated the diff for D81672: [Driver] When forcing a crash print the bug report message.

Don't print the diagnostic with -gen-reproducer.

Jun 26 2020, 12:35 PM · Restricted Project, Restricted Project
john.brawn added inline comments to D81672: [Driver] When forcing a crash print the bug report message.
Jun 26 2020, 12:35 PM · Restricted Project, Restricted Project

Jun 25 2020

john.brawn added inline comments to D81672: [Driver] When forcing a crash print the bug report message.
Jun 25 2020, 12:28 PM · Restricted Project, Restricted Project
john.brawn added a comment to D81992: [AArch64][GlobalISel] Make G_SEXT_INREG legal and add selection support..

It looks like this patch is causing incorrect code generation for

Jun 25 2020, 9:40 AM · Restricted Project

Jun 23 2020

john.brawn added inline comments to D81672: [Driver] When forcing a crash print the bug report message.
Jun 23 2020, 6:21 AM · Restricted Project, Restricted Project

Jun 22 2020

john.brawn updated the diff for D81672: [Driver] When forcing a crash print the bug report message.

Print the bug report message when forcing a crash, but also have the message available even with LLVM_ENABLE_BACKTRACES=OFF.

Jun 22 2020, 9:39 AM · Restricted Project, Restricted Project

Jun 18 2020

john.brawn updated the diff for D81672: [Driver] When forcing a crash print the bug report message.

Moved BugReportMsg printing into CrashRecoveryContext, and stopped printing of backtrace when forcing a crash.

Jun 18 2020, 10:18 AM · Restricted Project, Restricted Project
john.brawn added inline comments to D81672: [Driver] When forcing a crash print the bug report message.
Jun 18 2020, 9:49 AM · Restricted Project, Restricted Project

Jun 16 2020

john.brawn added reviewers for D81672: [Driver] When forcing a crash print the bug report message: aganea, rnk.

Added a couple of reviewers that have recently worked on CrashRecoveryContext.

Jun 16 2020, 12:39 PM · Restricted Project, Restricted Project

Jun 11 2020

john.brawn added a comment to D79785: [ARM] Register pressure with -mthumb forces register reload before each call.

Changes look OK, though as I said before please add tests for this.

Jun 11 2020, 11:33 AM · Restricted Project
john.brawn created D81672: [Driver] When forcing a crash print the bug report message.
Jun 11 2020, 10:28 AM · Restricted Project, Restricted Project

Jun 3 2020

john.brawn added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

It look like there have been recent changes to BranchProbabilityInfo that mean this patch needs to be rebased.

Jun 3 2020, 10:58 AM · Restricted Project

May 26 2020

john.brawn committed rG6c906f7785da: [Sema] Diagnose more cases of static data members in local or unnamed classes (authored by john.brawn).
[Sema] Diagnose more cases of static data members in local or unnamed classes
May 26 2020, 5:55 AM
john.brawn closed D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.
May 26 2020, 5:55 AM · Restricted Project

May 22 2020

john.brawn added inline comments to D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.
May 22 2020, 11:47 AM · Restricted Project
john.brawn updated the diff for D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.

Detect more kinds of local class.

May 22 2020, 11:47 AM · Restricted Project

May 21 2020

john.brawn added inline comments to D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.
May 21 2020, 6:59 AM · Restricted Project
john.brawn updated the diff for D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.

Use the tag of the anonymous struct when emitting a diagnostic.

May 21 2020, 6:26 AM · Restricted Project

May 20 2020

john.brawn updated the diff for D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.

Adjusted to not give multiple errors when more than one error criteria is met.

May 20 2020, 9:48 AM · Restricted Project
john.brawn created D80295: [Sema] Diagnose more cases of static data members in local or unnamed classes.
May 20 2020, 7:01 AM · Restricted Project

May 18 2020

john.brawn added a comment to D79785: [ARM] Register pressure with -mthumb forces register reload before each call.

Please add some tests for this to llvm/test/CodeGen/ARM/.

May 18 2020, 11:54 AM · Restricted Project

May 14 2020

john.brawn committed rG4d25f4453d60: [libc++] Adjust how we guard the inclusion of unistd.h (authored by john.brawn).
[libc++] Adjust how we guard the inclusion of unistd.h
May 14 2020, 4:16 AM
john.brawn closed D79784: [libc++] Adjust how we guard the inclusion of unistd.h.
May 14 2020, 4:15 AM · Restricted Project

May 13 2020

john.brawn added a comment to D79712: [AArch64][BFloat] add BFloat instruction support for AArch64.

Could you add some tests (unless they're added in a later patch)?

May 13 2020, 6:27 AM · Restricted Project
john.brawn updated the diff for D79784: [libc++] Adjust how we guard the inclusion of unistd.h.
May 13 2020, 5:54 AM · Restricted Project
john.brawn added inline comments to D79784: [libc++] Adjust how we guard the inclusion of unistd.h.
May 13 2020, 5:54 AM · Restricted Project

May 12 2020

john.brawn created D79784: [libc++] Adjust how we guard the inclusion of unistd.h.
May 12 2020, 7:29 AM · Restricted Project
john.brawn resigned from D59080: Merge of global constants does not happen when constants have common linkage.
May 12 2020, 6:57 AM
john.brawn resigned from D57595: [ARM] Lower unaligned loads/stores to aeabi functions.
May 12 2020, 6:57 AM
john.brawn resigned from D53706: [MultiTailCallElimination]: Pass to eliminate multiple tail calls.
May 12 2020, 6:57 AM
john.brawn resigned from D54170: [InstCombine][SelectionDAG][AArch64] fold gep into select to enable speculation of load.
May 12 2020, 6:57 AM
john.brawn resigned from D33935: Allow rematerialization of ARM Thumb MOVi8 instruction in some contexts.
May 12 2020, 6:57 AM
john.brawn resigned from D52227: LLVM: Expose SimplifyCFGPass (as used in PassBuilder::buildModuleOptimizationPipeline) in PassRegistry.def.
May 12 2020, 6:57 AM · Restricted Project
john.brawn resigned from D51637: [AsmPrinter] GlobalAlias with non-zero size and public linkage ends up with wrong size, PR38794.
May 12 2020, 6:57 AM · Restricted Project
john.brawn resigned from D15746: Normalize the features string in SubtargetFeatures::getFeatureBits.
May 12 2020, 6:57 AM
john.brawn resigned from D44098: [ARM] Relax condition for PerformSHLSimplify.
May 12 2020, 6:57 AM
john.brawn resigned from D26191: [ARM] Patch to improve memcpy inlined assembly sequence..
May 12 2020, 6:57 AM

Apr 22 2020

john.brawn committed rG8211cfb7c8bd: [ARM] Don't shrink STM if it would cause an unknown base register store (authored by john.brawn).
[ARM] Don't shrink STM if it would cause an unknown base register store
Apr 22 2020, 7:01 AM
john.brawn closed D78493: [ARM] Don't shrink STM if it would cause an unknown base register store.
Apr 22 2020, 7:01 AM · Restricted Project

Apr 21 2020

john.brawn updated the diff for D78493: [ARM] Don't shrink STM if it would cause an unknown base register store.

Adjust comments. Also, after double-checking the 8-A and 8-M ARMARMs it's OK if the base register being stored is the lowest one so adjusted to allow that.

Apr 21 2020, 10:47 AM · Restricted Project

Apr 20 2020

john.brawn created D78493: [ARM] Don't shrink STM if it would cause an unknown base register store.
Apr 20 2020, 8:05 AM · Restricted Project

Apr 15 2020

Herald added a reviewer for D71775: [ThreadPool] On Windows, extend usage to all CPU sockets and all NUMA groups: MaskRay.

With this patch the Threading.PhysicalConcurrency unit test fails when run with an affinity less than the number of physical cpus. I've raised https://bugs.llvm.org/show_bug.cgi?id=45556.

Apr 15 2020, 8:11 AM · Restricted Project, Restricted Project, Restricted Project

Apr 3 2020

john.brawn committed rG4ad9ca0f9e1b: [ARM] Fix incorrect handling of big-endian vmov.i64 (authored by john.brawn).
[ARM] Fix incorrect handling of big-endian vmov.i64
Apr 3 2020, 9:43 AM
john.brawn committed rGcd58fb632533: [ARM] Avoid pointless vrev of element-wise vmov (authored by john.brawn).
[ARM] Avoid pointless vrev of element-wise vmov
Apr 3 2020, 9:43 AM
john.brawn committed rG966ae762229f: Run update_llc_test on test/CodeGen/ARM/vmov.ll (authored by john.brawn).
Run update_llc_test on test/CodeGen/ARM/vmov.ll
Apr 3 2020, 9:42 AM
john.brawn closed D76515: [ARM] Fix incorrect handling of big-endian vmov.i64.
Apr 3 2020, 9:42 AM · Restricted Project
john.brawn closed D76514: [ARM] Avoid pointless vrev of element-wise vmov.
Apr 3 2020, 9:42 AM · Restricted Project
john.brawn updated the diff for D76515: [ARM] Fix incorrect handling of big-endian vmov.i64.

Rebase.

Apr 3 2020, 8:35 AM · Restricted Project
john.brawn updated the diff for D76514: [ARM] Avoid pointless vrev of element-wise vmov.

Rebase and add adjust MVE masked load handling. Also make use of update_llc_checks - I tried it again and this time it did use a single CHECK when both little-endian and big-endian code generation are the same, so it looks like I was using it wrong somehow before (though I don't know in what way).

Apr 3 2020, 8:35 AM · Restricted Project

Mar 27 2020

john.brawn added inline comments to D76514: [ARM] Avoid pointless vrev of element-wise vmov.
Mar 27 2020, 5:24 AM · Restricted Project

Mar 26 2020

john.brawn added inline comments to D76514: [ARM] Avoid pointless vrev of element-wise vmov.
Mar 26 2020, 11:55 AM · Restricted Project
john.brawn updated the diff for D76514: [ARM] Avoid pointless vrev of element-wise vmov.

Do this in ARMTargetLowering::PerformDAGCombine

Mar 26 2020, 11:55 AM · Restricted Project
john.brawn added a comment to D31343: Add an attribute plugin example.

Release note added: https://reviews.llvm.org/rG0cff81cff05d

Mar 26 2020, 8:38 AM · Restricted Project
john.brawn committed rG0cff81cff05d: Add a release note for attribute plugins (authored by john.brawn).
Add a release note for attribute plugins
Mar 26 2020, 8:06 AM

Mar 25 2020

john.brawn committed rGbc3f171090f6: Don't normalise CXX11/C2X attribute names to start with :: (authored by john.brawn).
Don't normalise CXX11/C2X attribute names to start with ::
Mar 25 2020, 8:05 AM
john.brawn committed rG3f03c12a51be: Add an attribute plugin example (authored by john.brawn).
Add an attribute plugin example
Mar 25 2020, 8:05 AM
john.brawn closed D76704: Don't normalise CXX11/C2X attribute names to start with ::.
Mar 25 2020, 8:05 AM · Restricted Project
john.brawn closed D31343: Add an attribute plugin example.
Mar 25 2020, 8:04 AM · Restricted Project
john.brawn accepted D76760: Do export symbols when LLVM_EXPORT_SYMBOLS_FOR_PLUGINS is on..

LGTM.

Mar 25 2020, 7:32 AM · Restricted Project

Mar 24 2020

john.brawn added a comment to D76514: [ARM] Avoid pointless vrev of element-wise vmov.

Would it make sense to do this as a DAG fold? That way we would get MVE for free too.

Mar 24 2020, 9:07 AM · Restricted Project
john.brawn created D76704: Don't normalise CXX11/C2X attribute names to start with ::.
Mar 24 2020, 7:29 AM · Restricted Project
john.brawn updated the diff for D31343: Add an attribute plugin example.

A few small changes:

  • Don't start C++11 spelling with :: (changes to name normalisation to allow this are in D76704)
  • Don't check that the Decl is null in diagAppertainsToDecl
  • Return AttributeNotApplied on errors in handleDeclAttribute
Mar 24 2020, 7:29 AM · Restricted Project

Mar 23 2020

john.brawn updated the diff for D76515: [ARM] Fix incorrect handling of big-endian vmov.i64.

Apply clang-format changes.

Mar 23 2020, 8:41 AM · Restricted Project
john.brawn committed rGfa0320dd8d5a: Add ParsedAttrInfo::handleDeclAttribute (authored by john.brawn).
Add ParsedAttrInfo::handleDeclAttribute
Mar 23 2020, 6:31 AM
john.brawn closed D31342: Add ParsedAttrInfo::handleDeclAttribute.
Mar 23 2020, 6:31 AM · Restricted Project

Mar 20 2020

john.brawn created D76515: [ARM] Fix incorrect handling of big-endian vmov.i64.
Mar 20 2020, 10:49 AM · Restricted Project
john.brawn created D76514: [ARM] Avoid pointless vrev of element-wise vmov.
Mar 20 2020, 10:19 AM · Restricted Project

Mar 18 2020

john.brawn updated the diff for D31342: Add ParsedAttrInfo::handleDeclAttribute.

Use an enum for the return value.

Mar 18 2020, 9:47 AM · Restricted Project
john.brawn updated the diff for D31343: Add an attribute plugin example.

Updated to match the changes to D31342

Mar 18 2020, 9:47 AM · Restricted Project

Mar 17 2020

john.brawn committed rGc09368313c23: [StackProtector] Catch direct out-of-bounds when checking address-takenness (authored by john.brawn).
[StackProtector] Catch direct out-of-bounds when checking address-takenness
Mar 17 2020, 5:43 AM
john.brawn closed D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 17 2020, 5:43 AM · Restricted Project

Mar 16 2020

john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Adjust GEP handling to reduce AllocSize by Offset instead of using the result size.

Mar 16 2020, 7:35 AM · Restricted Project
john.brawn added inline comments to D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 16 2020, 6:59 AM · Restricted Project

Mar 13 2020

john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Use the allocation size instead of the allocation type.

Mar 13 2020, 9:06 AM · Restricted Project

Mar 12 2020

john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Adjusted to avoid looking through pointer types by passing around the allocated type and checking it against the size of memory accesses. Also correctly handle GEPs where the addressed member is partially outside of the allocated object.

Mar 12 2020, 10:18 AM · Restricted Project

Mar 11 2020

john.brawn added inline comments to D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 11 2020, 9:04 AM · Restricted Project
john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Added bitcast handling.

Mar 11 2020, 7:24 AM · Restricted Project
john.brawn added inline comments to D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 11 2020, 7:24 AM · Restricted Project

Mar 10 2020

john.brawn added inline comments to D31342: Add ParsedAttrInfo::handleDeclAttribute.
Mar 10 2020, 10:19 AM · Restricted Project
john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Removed loop tests.

Mar 10 2020, 8:06 AM · Restricted Project
john.brawn added a comment to D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Changes look good, but there's still the question about whether you really need the loop tests.

Mar 10 2020, 5:48 AM · Restricted Project

Mar 9 2020

john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Update based on review comments.

Mar 9 2020, 10:13 AM · Restricted Project
john.brawn added inline comments to D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 9 2020, 10:13 AM · Restricted Project

Mar 6 2020

john.brawn added inline comments to D31342: Add ParsedAttrInfo::handleDeclAttribute.
Mar 6 2020, 10:28 AM · Restricted Project
john.brawn updated the diff for D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.

Use getTypeAllocSize, apply clang-format.

Mar 6 2020, 5:31 AM · Restricted Project
john.brawn added inline comments to D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 6 2020, 5:31 AM · Restricted Project

Mar 5 2020

john.brawn created D75695: [StackProtector] Catch direct out-of-bounds when checking address-takenness.
Mar 5 2020, 10:22 AM · Restricted Project

Mar 4 2020

john.brawn committed rG2bb3fb05e20e: Handle PluginAttrInstances using ManagedStatic (authored by john.brawn).
Handle PluginAttrInstances using ManagedStatic
Mar 4 2020, 7:20 AM

Mar 3 2020

john.brawn abandoned D39960: [InstCombine] In foldSelectOpOp reuse existing selects if present.

Abandoning this old patch (the underlying problem was solved by https://reviews.llvm.org/rL348496 which made GVN PRE not introduce the problematic phis in the first place).

Mar 3 2020, 6:38 AM · Restricted Project
john.brawn abandoned D50723: [SimplifyCFG] Delay phi-to-select until the end of module simplification.

Abandoning this old patch that I have no intention of doing any further work on.

Mar 3 2020, 6:06 AM · Restricted Project