Confusing .align address arrangement

Viewed 89

I was looking at the address assignments.

00010004 <arr>: 10004: 10080402 .word 0x10080402 10008: 20 .byte 0x20 
00010009 <eoa>: 10009: 00 .byte 0x00 ... 
0001000c <start>: ...

Assembly part of the code:

.section .text.ResetISR
.align
.global ResetISR
.type ResetISR, %function

ResetISR:
   b start

arr:
  .byte 2, 4, 8, 16, 32

eoa:
  .align

start: ...

Why does the address of eoa start at 00010009. It should be starting at 0001000d, right?
Why does start address the memory from 0001000c and not from 0001000d?

1 Answers
Related