title: Calling a table of function using repeat blocks or macros in GNU assembly
body: <p>If I wanted to generate code that looks like this:</p>
  
  <pre><code>CALL FUNC0
  CALL FUNC1
  CALL FUNC2
  CALL FUNC3
  CALL FUNC4
  CALL FUNC5
  ...
  CALL FUNC19
  </code></pre>
  
  <p>How can I use a repeat block generate such code, using something similar to the code below:</p>
  
  <pre><code>.equ SYMBOL, 0
  .rept 20
     CALL FUNC(SMYBOL)
     .equ SYMBOL, (SYMBOL+1)
  .endr
  </code></pre>
  
  <p>Macros are fine too.</p>
  
  <p>I'd like to know how to do this in C as well.</p>