Home | History | Annotate | Download | only in gdb

Lines Matching defs:prologue

154 /* Prologue types:
160 AVR_PROLOGUE_NONE, /* No prologue */
432 This function decodes an AVR function prologue to determine:
444 A typical AVR function prologue with a frame pointer might look like this:
458 A typical AVR function prologue without a frame pointer might look like
463 A main function prologue looks like this:
469 A signal handler prologue looks like this:
485 A interrupt handler prologue looks like this:
504 A `-mcall-prologues' prologue looks like this (Note that the megas use a
505 jmp instead of a rjmp, thus the prologue is one word larger since jmp is a
514 /* Not really part of a prologue, but still need to scan for it, is when a
515 function prologue moves values passed via registers as arguments to new
522 will use two mov insns. This could be done after any of the above prologue
533 unsigned char prologue[AVR_MAX_PROLOGUE_SIZE];
542 reading in the bytes of the prologue. The problem is that the figuring
543 prologue is is a bit difficult. The old code
545 read_memory (pc_beg, prologue, len);
547 /* Scanning main()'s prologue
561 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
566 insn = extract_unsigned_integer (&prologue[vpc + 2], 2, byte_order);
572 && memcmp (prologue + vpc + 4, img, sizeof (img)) == 0)
582 /* Scanning `-mcall-prologues' prologue
583 Classic prologue is 10 bytes, mega prologue is a 12 bytes long */
597 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
604 insn = extract_unsigned_integer (&prologue[vpc + 2], 2, byte_order);
611 insn = extract_unsigned_integer (&prologue[vpc + 4], 2, byte_order);
618 insn = extract_unsigned_integer (&prologue[vpc + 6], 2, byte_order);
630 insn = extract_unsigned_integer (&prologue[vpc + 8], 2, byte_order);
650 | (extract_unsigned_integer (&prologue[vpc + 10], 2, byte_order)
693 /* Scan for the beginning of the prologue for an interrupt or signal
694 function. Note that we have to set the prologue type here since the
695 third stage of the prologue may not be present (e.g. no saved registered
709 && memcmp (prologue, img, sizeof (img)) == 0)
719 && memcmp (img + 2, prologue, sizeof (img) - 2) == 0)
730 /* First stage of the prologue scanning.
735 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
754 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
769 /* Second stage of the prologue scanning.
782 && memcmp (prologue + vpc, img, sizeof (img)) == 0)
789 /* Third stage of the prologue scanning. (Really two stages).
820 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
830 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
837 /* Scan the last part of the prologue. May not be present for interrupt
838 or signal handler functions, which is why we set the prologue type
839 when we saw the beginning of the prologue previously. */
842 && memcmp (prologue + vpc, img_sig, sizeof (img_sig)) == 0)
847 && memcmp (prologue + vpc, img_int, sizeof (img_int)) == 0)
852 && memcmp (prologue + vpc, img, sizeof (img)) == 0)
863 /* If we got this far, we could not scan the prologue, so just return the pc
868 insn = extract_unsigned_integer (&prologue[vpc], 2, byte_order);
902 /* Need to run the prologue scanner to figure out if the function has a
903 prologue and possibly skip over moving arguments passed via registers
913 or there's no line info, or the line after the prologue is after
914 the end of the function (there probably isn't a prologue). */
1098 /* Hopefully the prologue analysis either correctly determined the
1159 "avr prologue",