# p2align

### p2align[wl] abs-expr, abs-expr, abs-expr

Pad the location counter (in the current subsection) to a particular storage boundary. The first expression (which must be absolute) is the number of low-order zero bits the location counter must have after advancement. For example .p2align 3' advances the location counter until it a multiple of 8. If the location counter is already a multiple of 8, no change is needed.

The second expression (also absolute) gives the fill value to be stored in the padding bytes. It (and the comma) may be omitted. If it is omitted, the padding bytes are normally zero. However, on some systems, if the section is marked as containing code and the fill value is omitted, the space is filled with no-op instructions.

The third expression is also absolute, and is also optional. If it is present, it is the maximum number of bytes that should be skipped by this alignment directive. If doing the alignment would require skipping more bytes than the specified maximum, then the alignment is not done at all. You can omit the fill value (the second argument) entirely by simply using two commas after the required alignment; this can be useful if you want the alignment to be filled with no-op instructions when appropriate.

The .p2alignw and .p2alignl directives are variants of the .p2align directive. The .p2alignw directive treats the fill pattern as a two byte word value. The .p2alignl directives treats the fill pattern as a four byte longword value. For example, .p2alignw 2,0x368d` will align to a multiple of 4. If it skips two bytes, they will be filled in with the value 0x368d (the exact placement of the bytes depends upon the endianness of the processor). If it skips 1 or 3 bytes, the fill value is undefined.

#### RISC-V ELF规范和函数调用规范

2018-02-23 16:20:57

#### x264官方学习文档（1）——英文资料，极具参考价值

2017-09-19 17:57:19

#### AVX官方入门介绍

2014-08-06 23:22:37

#### ARM NEON 编程系列5——neon编程参考手册

2017-08-18 18:02:00

#### GCC汇编源码中的alignment

2013-01-21 11:30:36

#### AT＆T汇编伪指令

2012-10-29 20:27:49

#### ARM汇编指令：.align理解和用法

2012-03-10 20:32:45

#### if else 和 switch的效率

2010-08-31 09:24:00

#### iOS App 的编译过程

2017-11-22 17:45:56

#### 【进程管理】模式切换

2015-05-09 20:28:56