|
Lines 2589-2595
mapping_state (enum mstate state)
|
Link Here
|
|---|
|
| 2589 |
/* The mapping symbol has already been emitted. |
2589 |
/* The mapping symbol has already been emitted. |
| 2590 |
There is nothing else to do. */ |
2590 |
There is nothing else to do. */ |
| 2591 |
return; |
2591 |
return; |
| 2592 |
else if (TRANSITION (MAP_UNDEFINED, MAP_DATA)) |
2592 |
|
|
|
2593 |
if (state == MAP_ARM || state == MAP_THUMB) |
| 2594 |
/* All ARM instructions require 4-byte alignment. |
| 2595 |
(Almost) all Thumb instructions require 2-byte alignment. |
| 2596 |
|
| 2597 |
When emitting instructions into any section, mark the section |
| 2598 |
appropriately. |
| 2599 |
|
| 2600 |
Some Thumb instructions are alignment-sensitive modulo 4 bytes, |
| 2601 |
but themselves require 2-byte alignment; this applies to some |
| 2602 |
PC- relative forms. However, these cases will invovle implicit |
| 2603 |
literal pool generation or an explicit .align >=2, both of |
| 2604 |
which will cause the section to me marked with sufficient |
| 2605 |
alignment. Thus, we don't handle those cases here. */ |
| 2606 |
record_alignment (now_seg, state == MAP_ARM ? 2 : 1); |
| 2607 |
|
| 2608 |
if (TRANSITION (MAP_UNDEFINED, MAP_DATA)) |
| 2593 |
/* This case will be evaluated later in the next else. */ |
2609 |
/* This case will be evaluated later in the next else. */ |
| 2594 |
return; |
2610 |
return; |
| 2595 |
else if (TRANSITION (MAP_UNDEFINED, MAP_ARM) |
2611 |
else if (TRANSITION (MAP_UNDEFINED, MAP_ARM) |