Lines 656-668
Link Here
|
656 |
{ |
656 |
{ |
657 |
dw_cfi_ref xcfi; |
657 |
dw_cfi_ref xcfi; |
658 |
|
658 |
|
659 |
fde->dw_fde_current_label = label = xstrdup (label); |
659 |
label = xstrdup (label); |
660 |
|
660 |
|
661 |
/* Set the location counter to the new label. */ |
661 |
/* Set the location counter to the new label. */ |
662 |
xcfi = new_cfi (); |
662 |
xcfi = new_cfi (); |
663 |
xcfi->dw_cfi_opc = DW_CFA_advance_loc4; |
663 |
/* If we have a current label, advance from there, otherwise |
|
|
664 |
set the location directly using set_loc. */ |
665 |
xcfi->dw_cfi_opc = fde->dw_fde_current_label |
666 |
? DW_CFA_advance_loc4 |
667 |
: DW_CFA_set_loc; |
664 |
xcfi->dw_cfi_oprnd1.dw_cfi_addr = label; |
668 |
xcfi->dw_cfi_oprnd1.dw_cfi_addr = label; |
665 |
add_cfi (&fde->dw_fde_cfi, xcfi); |
669 |
add_cfi (&fde->dw_fde_cfi, xcfi); |
|
|
670 |
|
671 |
fde->dw_fde_current_label = label; |
666 |
} |
672 |
} |
667 |
|
673 |
|
668 |
add_cfi (&fde->dw_fde_cfi, cfi); |
674 |
add_cfi (&fde->dw_fde_cfi, cfi); |
Lines 2050-2055
Link Here
|
2050 |
else |
2056 |
else |
2051 |
dw2_asm_output_addr (DWARF2_ADDR_SIZE, |
2057 |
dw2_asm_output_addr (DWARF2_ADDR_SIZE, |
2052 |
cfi->dw_cfi_oprnd1.dw_cfi_addr, NULL); |
2058 |
cfi->dw_cfi_oprnd1.dw_cfi_addr, NULL); |
|
|
2059 |
fde->dw_fde_current_label = cfi->dw_cfi_oprnd1.dw_cfi_addr; |
2053 |
break; |
2060 |
break; |
2054 |
|
2061 |
|
2055 |
case DW_CFA_advance_loc1: |
2062 |
case DW_CFA_advance_loc1: |
Lines 3934-3939
Link Here
|
3934 |
fde->dw_fde_unlikely_section_label = cfun->cold_section_label; |
3941 |
fde->dw_fde_unlikely_section_label = cfun->cold_section_label; |
3935 |
fde->dw_fde_unlikely_section_end_label = cfun->cold_section_end_label; |
3942 |
fde->dw_fde_unlikely_section_end_label = cfun->cold_section_end_label; |
3936 |
have_switched_text_section = true; |
3943 |
have_switched_text_section = true; |
|
|
3944 |
|
3945 |
/* Reset the current label on switching text sections, so that we |
3946 |
don't attempt to advance_loc4 between labels in different sections. */ |
3947 |
fde->dw_fde_current_label = NULL; |
3937 |
} |
3948 |
} |
3938 |
|
3949 |
|
3939 |
#endif |
3950 |
#endif |