Inspired by discussion on D71238D70157. Please direct all discussion there until direction is agreed on. This isn't worthy of review until we settle on direction and syntax, it's just posted for context.
In particular, this patch is: a) using unsettled syntax which will likely change, b) hasn't merged changes in the align no actual implement logic previously suggestedation, and c) is missing a whole bunch of tests.
The strawman syntax used in this patch is:
.push_align_branch_boundary_align 5 5 jcc, fused, call
testq %rax, %raxcallq bar
jnz baz
.boundarypop_align_end
I picked this mostly for ease of implementation, nothing more. branch_boundary