rinon (Stephen Crane)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 1 2013, 1:07 PM (254 w, 3 d)

Recent Activity

Fri, Jul 20

rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.

Rebase

Fri, Jul 20, 5:02 PM
rinon updated the diff for D37586: Add AArch64 backend support for pagerando.
  • Update AArch64 tests
    • Fix OpFlags checks for new packed OpFlags
    • Correctly handle null Callee in FastISel
Fri, Jul 20, 5:02 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.
  • Update ARM tests
Fri, Jul 20, 5:01 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.

Fix constantpool section lookup to propagate section alignment to its callers. This fixes test/CodeGen/X86/win_cst_pool.ll.

Fri, Jul 20, 5:00 PM
rinon updated the diff for D37583: Add pagerando binning pass.
  • Fix first-fit algorithm test after adding PGO binning.
Fri, Jul 20, 4:57 PM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.
  • Update pagerando wrapper tests
Fri, Jul 20, 4:56 PM
rinon updated the diff for D37580: Add Position Independent Pages (PIP) relocation model.

Rebase

Fri, Jul 20, 4:54 PM

Jul 12 2018

rinon closed D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Closing this review in favor of updated version @ D49256.

Jul 12 2018, 11:36 AM
rinon accepted D49256: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Thanks for updating this! LGTM.

Jul 12 2018, 11:34 AM
rinon added a comment to D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Thanks @MatzeB. Yes, I believe GlobalISel wasn't enabled yet when I last touched this patch. I'd be happy to take a look at those failures now, if you want.

Jul 12 2018, 10:24 AM
rinon added a comment to D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Thanks @rinon for this. Are you still interested in committing this? I would like to get this in to fix some X86 machine verifier issues.

Jul 12 2018, 10:13 AM

May 9 2018

rinon added a comment to D7745: Add uniform distribution to RNG.

Is there anyone using the RNG infrastructure downstream? If we close the other compile-time diversity patchsets, it might make sense to remove the RNG interface until such time as it is needed again.

May 9 2018, 2:30 PM
rinon added a comment to D6983: Fixed Noop insertion.

If there's no external interest that I am unaware of, I think we should close this. I've still been working in this space. However due to deployment constraints, load-time rather than compile-time diversity is far more practical and interesting to everyone I've talked to. Fuzz testing micro-architectures may still be an exception to this, but I don't know of anyone who wants to use these type of features for that currently.

May 9 2018, 2:28 PM

Apr 30 2018

rinon added a comment to D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Thanks. I don't have commit access, so if anyone would commit it on my behalf I'd appreciate it. Sorry, I should have mentioned this earlier.

Apr 30 2018, 6:31 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Rebase onto master, rather than other pagerando commits. Should fix arc patch
not being able to apply the patch.

Apr 30 2018, 6:27 PM
rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.

Rebase

Apr 30 2018, 6:15 PM
rinon updated the diff for D37586: Add AArch64 backend support for pagerando.

Rebase

Apr 30 2018, 6:15 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.

Rebase

Apr 30 2018, 6:14 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.

Rebase

Apr 30 2018, 6:14 PM
rinon updated the diff for D37583: Add pagerando binning pass.

Rebase

Apr 30 2018, 6:13 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Rebase

Apr 30 2018, 6:13 PM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.

Rebase

Apr 30 2018, 6:12 PM
rinon updated the diff for D37580: Add Position Independent Pages (PIP) relocation model.

Rebase

Apr 30 2018, 6:12 PM

Apr 4 2018

rinon added a comment to D45234: CMake: Check LLVM_ENABLE_LIBXML2 in clang.

I'd be fine with not building c-index-test when building clang, but I didn't see any easy way to disable it.

Apr 4 2018, 5:46 PM

Apr 3 2018

rinon updated subscribers of D45234: CMake: Check LLVM_ENABLE_LIBXML2 in clang.
Apr 3 2018, 3:52 PM
rinon created D45234: CMake: Check LLVM_ENABLE_LIBXML2 in clang.
Apr 3 2018, 3:52 PM

Apr 2 2018

rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.
  • Update after pagerando binning refactoring
Apr 2 2018, 6:00 PM
rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.

Rebase

Apr 2 2018, 5:45 PM
rinon updated the diff for D37586: Add AArch64 backend support for pagerando.
  • Don't tailcall from non-pagerando to pagerando functions
  • Rebase
Apr 2 2018, 5:44 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.
  • Don't tailcall from non-pagerando to pagerando functions
  • Use a heap-allocated array rather than a VLA
  • Rebase
Apr 2 2018, 5:43 PM
rinon updated the diff for D37583: Add pagerando binning pass.
  • Add profile-guided pagerando binning algorithm
  • Rebase
Apr 2 2018, 5:43 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.

Rebase

Apr 2 2018, 5:43 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Rebase

Apr 2 2018, 4:33 PM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.
  • Only wrap functions marked with pagerando attribute.
Apr 2 2018, 4:32 PM
rinon updated the diff for D37580: Add Position Independent Pages (PIP) relocation model.

Rebase

Apr 2 2018, 4:20 PM

Jan 24 2018

rinon updated the diff for D37585: Add ARM backend support for pagerando.

Don't allow FastISel for libcalls from pagerando functions

Jan 24 2018, 9:44 AM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.
  • Do not wrap thunk functions
  • Restore propagation of function attributes not in attribute list
Jan 24 2018, 9:41 AM

Jan 23 2018

rinon updated the diff for D37585: Add ARM backend support for pagerando.

Fix POT/bin offset references to aliases.

Jan 23 2018, 5:23 PM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.

Explicitly propagate applicable function attributes to pagerando wrappers.

Jan 23 2018, 5:23 PM
rinon updated the summary of D37585: Add ARM backend support for pagerando.
Jan 23 2018, 2:34 PM

Jan 22 2018

rinon updated the summary of D37586: Add AArch64 backend support for pagerando.
Jan 22 2018, 7:13 PM
rinon updated the summary of D37585: Add ARM backend support for pagerando.
Jan 22 2018, 3:35 PM
rinon updated the diff for D37586: Add AArch64 backend support for pagerando.

Rebase

Jan 22 2018, 3:33 PM
rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.

Rebase

Jan 22 2018, 3:33 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.

Rebase

Jan 22 2018, 3:30 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.

Rebase

Jan 22 2018, 3:25 PM
rinon updated the summary of D37584: Add target-independent backend modifications for pagerando.
Jan 22 2018, 3:23 PM

Jan 19 2018

rinon retitled D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC from Remove pipeline dependencies on StackProtector to CodeGen: Remove pipeline dependencies on StackProtector; NFC.
Jan 19 2018, 3:03 PM
rinon added inline comments to D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.
Jan 19 2018, 3:00 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.
  • Don't repeat enum name.
  • Remove adjustForColoring since it is now unused.
Jan 19 2018, 2:58 PM

Jan 18 2018

rinon updated the diff for D37583: Add pagerando binning pass.

Rebase

Jan 18 2018, 6:41 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Rebase

Jan 18 2018, 6:31 PM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.

Ensure that pagerando wrapper functions are placed before binned functions

Jan 18 2018, 6:29 PM
rinon updated the diff for D37580: Add Position Independent Pages (PIP) relocation model.

Rebase

Jan 18 2018, 6:28 PM

Jan 9 2018

rinon added a dependent revision for D37584: Add target-independent backend modifications for pagerando: D37587: Add Gold plugin LTO support for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependency for D37587: Add Gold plugin LTO support for pagerando: D37584: Add target-independent backend modifications for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependency for D37586: Add AArch64 backend support for pagerando: D37584: Add target-independent backend modifications for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependent revision for D37584: Add target-independent backend modifications for pagerando: D37586: Add AArch64 backend support for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependency for D37585: Add ARM backend support for pagerando: D37584: Add target-independent backend modifications for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependent revision for D37584: Add target-independent backend modifications for pagerando: D37585: Add ARM backend support for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependent revision for D37583: Add pagerando binning pass: D37584: Add target-independent backend modifications for pagerando.
Jan 9 2018, 5:00 PM
rinon added a dependency for D37584: Add target-independent backend modifications for pagerando: D37583: Add pagerando binning pass.
Jan 9 2018, 5:00 PM
rinon added a dependent revision for D37581: Implement pagerando wrapper functions to initialize POT register: D37583: Add pagerando binning pass.
Jan 9 2018, 4:59 PM
rinon added a dependent revision for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC: D37583: Add pagerando binning pass.
Jan 9 2018, 4:59 PM
rinon added dependencies for D37583: Add pagerando binning pass: D37581: Implement pagerando wrapper functions to initialize POT register, D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.
Jan 9 2018, 4:59 PM
rinon added a dependency for D37581: Implement pagerando wrapper functions to initialize POT register: D37580: Add Position Independent Pages (PIP) relocation model.
Jan 9 2018, 4:58 PM
rinon added a dependent revision for D37580: Add Position Independent Pages (PIP) relocation model: D37581: Implement pagerando wrapper functions to initialize POT register.
Jan 9 2018, 4:58 PM

Dec 12 2017

rinon updated the summary of D37587: Add Gold plugin LTO support for pagerando.
Dec 12 2017, 10:59 AM

Nov 15 2017

rinon updated the diff for D37586: Add AArch64 backend support for pagerando.

Fix external symbol references from pagerando code.

Nov 15 2017, 5:57 PM

Nov 14 2017

rinon updated the summary of D37587: Add Gold plugin LTO support for pagerando.
Nov 14 2017, 4:04 PM
rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.

Fix use-after-free of segment name when assigning to unique segments

Nov 14 2017, 4:01 PM

Nov 9 2017

rinon updated the diff for D37585: Add ARM backend support for pagerando.

Properly handle NULL global value in call lowering

Nov 9 2017, 5:32 PM

Nov 7 2017

rinon added a comment to D37585: Add ARM backend support for pagerando.

I'm mostly a linker person so I'm not best qualified to review the backend changes. I've tried to take a look from an overall toolchain perspective.

Nov 7 2017, 4:35 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.
  • Fix nits
  • Clarify comments
  • Remove unnecessary PIP addressing check
Nov 7 2017, 4:35 PM

Nov 6 2017

rinon added inline comments to D37584: Add target-independent backend modifications for pagerando.
Nov 6 2017, 5:01 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.
  • Refactor constantpool section lookup
  • Document POT emission
  • Allow targets to customize GOT symbol
Nov 6 2017, 4:59 PM
rinon updated the diff for D37583: Add pagerando binning pass.

Rebase

Nov 6 2017, 4:56 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Rebase

Nov 6 2017, 4:54 PM

Oct 31 2017

rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Fix typo

Oct 31 2017, 6:03 PM
rinon updated the summary of D37583: Add pagerando binning pass.
Oct 31 2017, 6:01 PM
rinon added inline comments to D37581: Implement pagerando wrapper functions to initialize POT register.
Oct 31 2017, 5:01 PM
rinon updated the summary of D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.
Oct 31 2017, 11:42 AM
rinon updated the summary of D37581: Implement pagerando wrapper functions to initialize POT register.
Oct 31 2017, 11:42 AM
rinon updated the summary of D37580: Add Position Independent Pages (PIP) relocation model.
Oct 31 2017, 11:41 AM
rinon added a comment to D37580: Add Position Independent Pages (PIP) relocation model.

Thanks for taking a look at this!

Oct 31 2017, 11:40 AM

Oct 10 2017

rinon updated the diff for D37587: Add Gold plugin LTO support for pagerando.

Rebase

Oct 10 2017, 5:50 PM
rinon updated the diff for D37586: Add AArch64 backend support for pagerando.
  • Rebase
  • Handle function aliases when checking for pagerando targets
Oct 10 2017, 5:49 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.

Handle function aliases when checking for pagerando targets

Oct 10 2017, 5:48 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.

Rebase

Oct 10 2017, 5:46 PM
rinon updated the diff for D37583: Add pagerando binning pass.

Rebase

Oct 10 2017, 5:45 PM
rinon updated the diff for D37582: CodeGen: Remove pipeline dependencies on StackProtector; NFC.

Rebase

Oct 10 2017, 5:43 PM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.
  • Rebase
  • Don't apply pagerando to naked functions
Oct 10 2017, 5:42 PM
rinon updated the diff for D37580: Add Position Independent Pages (PIP) relocation model.

Rebase

Oct 10 2017, 5:29 PM

Sep 27 2017

rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.
  • Rebase
Sep 27 2017, 2:19 PM
rinon added a comment to D37581: Implement pagerando wrapper functions to initialize POT register.

Thanks for taking a look at this, Nick. I think this revision should address all comments so far.

Sep 27 2017, 12:36 AM
rinon updated the diff for D37581: Implement pagerando wrapper functions to initialize POT register.
  • Remove pagerando_wrapper attribute and rename pagerando_binned
  • Use SmallVector for address useses
  • Fix comment style
  • Do not pagerando trivial functions with only trap+unreachable
  • Use Twine for function name
Sep 27 2017, 12:25 AM

Sep 11 2017

rinon updated the diff for D37586: Add AArch64 backend support for pagerando.
  • Fix style nits
Sep 11 2017, 6:29 PM
rinon updated the diff for D37585: Add ARM backend support for pagerando.
  • Fix style nits
Sep 11 2017, 6:28 PM
rinon updated the diff for D37584: Add target-independent backend modifications for pagerando.
  • Fix style nits
Sep 11 2017, 6:28 PM
rinon updated the diff for D37583: Add pagerando binning pass.
  • Fix style nit
Sep 11 2017, 6:25 PM