title: What happens if I create multiple ISRs for a single interrupt?
body: <p>I have this more or less theoretical question while all my IDEs are reinstalling... </p>
  
  <p>So I work with MSP430s mostly, and I'm curious about what happens if I create multiple ISRs for a single interrupt vector.</p>
  
  <p>Let's say I'm watching Port2 (pin inputs) for a button press.</p>
  
  <pre><code>#pragma vector = PORT2_VECTOR
  __interrupt void Port2_ISR_1 (void)
  {
      if (BUTTON1_DOWN)
      {
         g_temp = 1234;
      }
  }
  </code></pre>
  
  <p>Now what if I add another one somewhere that corresponds to the same PORT2_VECTOR?</p>
  
  <pre><code>#pragma vector = PORT2_VECTOR
  __interrupt void Port2_ISR_2 (void)
  {
      if (BUTTON2_DOWN)
      {
         g_temp = 2345;
      }
  }
  </code></pre>
  
  <p>They correspond to different buttons being pressed, but for the same interrupt vector. When the compiler compiles, does it put the service routines together if they belong to the same vector? Does the microcontroller execute both sequentially whenever PORT2 interrupt goes off?</p>