[all-commits] [llvm/llvm-project] 1a7398: [BranchAlign] Add master --x86-branches-within-32B...

Philip Reames via All-commits all-commits at lists.llvm.org
Tue Jan 14 18:17:58 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 1a7398eca2040d232149f18a75b5d78a6521941c
      https://github.com/llvm/llvm-project/commit/1a7398eca2040d232149f18a75b5d78a6521941c
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2020-01-14 (Tue, 14 Jan 2020)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/test/MC/X86/align-branch-64-1a.s

  Log Message:
  -----------
  [BranchAlign] Add master --x86-branches-within-32B-boundaries flag

This flag was originally part of D70157, but was removed as we carved away pieces of the review. Since we have the nop support checked in, and it appears mature(*), I think it's time to add the master flag. For now, it will default to nop padding, but once the prefix padding support lands, we'll update the defaults.

(*) I can now confirm that downstream testing of the changes which have landed to date - nop padding and compiler support for suppressions - is passing all of the functional testing we've thrown at it. There might still be something lurking, but we've gotten enough coverage to be confident of the basic approach.

Note that the new flag can be used either when assembling an .s file, or when using the integrated assembler directly from the compiler. The later will use all of the suppression mechanism and should always generate correct code. We don't yet have assembly syntax for the suppressions, so passing this directly to the assembler w/a raw .s file may result in broken code. Use at your own risk.

Also note that this isn't the wiring for the clang option. I think the most recent review for that is D72227, but I've lost track, so that might be off.

Differential Revision: https://reviews.llvm.org/D72738




More information about the All-commits mailing list