1.MEMORY关键字用于描述一个MCU ROM和RAM的内存地址分布(Memory Map),MEMORY中所做的内存描述主要用于SECTIONS中LMA和VMA的定义。

2.SECTIONS关键字用于定义output section(输出段)的相应input section(输入段)、LMA和VMA,是整个连接脚本中最为重要的部分。注:output section是实际存储在内存中的“段”,而input section是其构成成员,如.data为数据段,由所有全局变量构成(默认情况下);.text为代码段,由所有函数构成(默认情况下)...

3.下面我们首先来介绍MEMORY的语法,MEMORY的语法格式如下:

MEMORY
{
  <name> [(<attr>)] : ORIGIN = <origin>, LENGTH = <len>
  ...
}

其中<name>是所要定义的内存区域的名字,<origin>是其起始地址,<len>为内存区域的大小。另外,<attr>是可选的,并不重要,具体用法可参考GNU Linker的语法说明。

MEMORY的一个具体使用实例如下:

MEMORY
{rom (rx) : ORIGIN = 0, LENGTH = 256K  // MEMORY语法中可以使用如K、M和G这样的内存单位ram (!rx) : org = 0x40000000, l = 4M   // ORIGIN可以写为org,而LENGTH可以写为l
}

4.在介绍SECTIONS的用法之前,我们先对之前提到的LMA和VMA进行说明:每个output section都有一个LMA和一个VMA,LMA是其存储地址,而VMA是其运行时地址,例如将全局变量g_Data所在数据段.data的LMA设为0x80000020(属于ROM地址),VMA设为0xD0004000(属于RAM地址),那么g_Data的值将存储在ROM中的0x80000020处,而程序运行时,用到g_Data的程序会到RAM中的0xD0004000处寻找它。

6.现在我们可以开始介绍SECTIONS了,SECTIONS的语法如下:

SECTIONS
{
  <sections−command>
  <sections−command>
  ...
}

其中主要的部分是<sections−command>,而SECTIONS{ }属于框架。<sections−command>的语法如下:

<section> [<address>] [(<type>)] : [AT(<lma>)]
{
  <output−section−command>
  <var{output−section−command>
  ...
} [><region>] [AT><lma region>] [:<phdr> :<phdr> ...] [=<fillexp>]

我们从使用的角度来讲解其语法:(假设有一个全局变量myData,我们用#pragma section命令将其定义为.myData段(input section))

(1)我们首先可以定义output section的名字,随便什么都可以,比如.my_data;

(2)然后我们可以定义其构成成员,*(.myData);

(3)接下来我们就要指定.my_data的LMA和VMA了,有4种方法:

  a) [<address>] + [AT(<lma>)];

  b) [<address>] + [AT><lma region>];

  c) [><region>] + [AT><lma region>];

  d) [><region>] + [AT(<lma>)].

  但是要注意这些用法的不同:[<address>] 和 [AT(<lma>)]必须指定具体的地址,而 [><region>] 和 [AT><lma region>]只需指定内存空间,具体地址紧接着上一个output section的末尾地址。

  经过以上步骤,我们得出如下section定义:(这里只列出2种)

SECTIONS
{.my_data ( 0xD0004000 ) : AT ( 0x80000020 ){*(.myData)}  ...
}

SECTIONS
{.my_data :{*(.myData)} > ram AT> rom  ...
}

  以上为了说明SECTION的语法,使用了全局变量这种LMA和VMA不同的例子。而对于代码段.text这种LMA与VMA相同的情况,由于默认情况下LMA=VMA,因此可以只定义VMA而不必指明LMA,例如:

.text :
{*(.text)*(.text.*). = ALIGN(4);
} > pfls0

7.最后,我们有必要提及“.”这个符号(不是.text、.data中的".",而是如上例中.=ALIGN(4);中的"."),以下介绍来自于HighTec编译器手册

8.最后的最后,附上英飞凌TC2xx的Linker file,其中的语法和用法值得深入的去学习,可以极大地加深对链接脚本的理解。由于本篇博文着重介绍链接脚本中最重要的SECTIONS关键字的使用,大家可能在下面的链接脚本示例中碰到很多本文未提及的语法,不过这些都可以在参考手册第19章中找到。

/* Default linker script, for normal executables */
OUTPUT_FORMAT("elf32-tricore")
OUTPUT_ARCH(tricore)
ENTRY(_START)__TRICORE_DERIVATE_MEMORY_MAP__ = 0x270;LCF_CSA0_SIZE = 8k;
LCF_USTACK0_SIZE = 2k;
LCF_ISTACK0_SIZE = 1k;LCF_CSA1_SIZE = 8k;
LCF_USTACK1_SIZE = 2k;
LCF_ISTACK1_SIZE = 1k;LCF_CSA2_SIZE = 8k;
LCF_USTACK2_SIZE = 2k;
LCF_ISTACK2_SIZE = 1k;LCF_HEAP_SIZE = 4k;LCF_DSPR2_START = 0x50000000;
LCF_DSPR2_SIZE = 120k;LCF_DSPR1_START = 0x60000000;
LCF_DSPR1_SIZE = 120k;LCF_DSPR0_START = 0x70000000;
LCF_DSPR0_SIZE = 112k;LCF_CSA2_OFFSET    =    (LCF_DSPR2_SIZE - 1k - LCF_CSA2_SIZE);
LCF_ISTACK2_OFFSET =    (LCF_CSA2_OFFSET - 256 - LCF_ISTACK2_SIZE);
LCF_USTACK2_OFFSET =    (LCF_ISTACK2_OFFSET - 256 - LCF_USTACK2_SIZE);LCF_CSA1_OFFSET    =    (LCF_DSPR1_SIZE - 1k - LCF_CSA1_SIZE);
LCF_ISTACK1_OFFSET =    (LCF_CSA1_OFFSET - 256 - LCF_ISTACK1_SIZE);
LCF_USTACK1_OFFSET =    (LCF_ISTACK1_OFFSET - 256 - LCF_USTACK1_SIZE);LCF_CSA0_OFFSET    =    (LCF_DSPR0_SIZE - 1k - LCF_CSA0_SIZE);
LCF_ISTACK0_OFFSET =    (LCF_CSA0_OFFSET - 256 - LCF_ISTACK0_SIZE);
LCF_USTACK0_OFFSET =    (LCF_ISTACK0_OFFSET - 256 - LCF_USTACK0_SIZE);LCF_HEAP0_OFFSET =    (LCF_USTACK0_OFFSET - LCF_HEAP_SIZE);
LCF_HEAP1_OFFSET =    (LCF_USTACK1_OFFSET - LCF_HEAP_SIZE);
LCF_HEAP2_OFFSET =    (LCF_USTACK2_OFFSET - LCF_HEAP_SIZE);LCF_INTVEC0_START = 0x801F4000;
LCF_TRAPVEC0_START = 0x80000100;
LCF_TRAPVEC1_START = 0x801F6800;
LCF_TRAPVEC2_START = 0x801F6000;RESET = 0x80000020;MEMORY
{dsram2_local (w!xp): org = 0xd0000000, len = 120Kdsram2 (w!xp): org = 0x50000000, len = 120Kpsram2 (w!xp): org = 0x50100000, len = 24Kdsram1_local (w!xp): org = 0xd0000000, len = 120Kdsram1 (w!xp): org = 0x60000000, len = 120Kpsram1 (w!xp): org = 0x60100000, len = 24Kdsram0_local (w!xp): org = 0xd0000000, len = 112Kdsram0 (w!xp): org = 0x70000000, len = 112Kpsram0 (w!xp): org = 0x70100000, len = 24Kpsram_local (w!xp): org = 0xc0000000, len = 24Kpfls0 (rx!p): org = 0x80000000, len = 2Mpfls0_nc (rx!p): org = 0xa0000000, len = 2Mpfls1 (rx!p): org = 0x80200000, len = 2M        /*Not used to allocate and sections*/pfls1_nc (rx!p): org = 0xa0200000, len = 2M     /*Not used to allocate and sections*/dfls0 (rx!p): org = 0xaf000000, len = 384Klmuram (w!xp): org = 0x90000000, len = 32Klmuram_nc (w!xp): org = 0xb0000000, len = 32Kedmem (w!xp): org = 0x9f000000, len = 1Medmem_nc (w!xp): org = 0xbf000000, len = 1M
}    /* map local memory address to a global address */
REGION_MAP( CPU0 , ORIGIN(dsram0_local), LENGTH(dsram0_local), ORIGIN(dsram0))
REGION_MAP( CPU1 , ORIGIN(dsram1_local), LENGTH(dsram1_local), ORIGIN(dsram1))
REGION_MAP( CPU2 , ORIGIN(dsram2_local), LENGTH(dsram2_local), ORIGIN(dsram2))/*Un comment one of the below statements to enable CpuX DMI RAM to hold global variables*/
/*REGION_ALIAS( default_ram , dsram0)*/
REGION_ALIAS( default_ram , dsram1)
/*REGION_ALIAS( default_ram , dsram2)*/CORE_ID = GLOBAL ;SECTIONS
{/*This section is always required as Boot mode header 0 address absolutely restricted at address 0x80000000*/.bmhd_0 (0x80000000) : FLAGS(arl){BootModeHeader0 = .;KEEP (*(.bmhd_0))} > pfls0/*This section is always required as Boot mode header 1 address absolutely restricted at address 0x80020000*/.bmhd_1 (0x80020000) : FLAGS(arl){BootModeIndex = .;KEEP (*(.bmhd_1));} > pfls0/*This section is always required as user start address absolutely restricted at address 0x80000020*/.startup (0x80000020) : FLAGS(rxl){BootModeIndex = .;. = ALIGN(4);KEEP (*(.start));. = ALIGN(4);} > pfls0 =0x800/*This section contains the data indirection pointers to interface external devices*/.interface_const (0x80000040) :{__IF_CONST = .;KEEP (*(.interface_const));. = ALIGN(4);} > pfls0.traptab_tc0 (LCF_TRAPVEC0_START) :{PROVIDE(__TRAPTAB_CPU0 = .);KEEP (*(.traptab_cpu0));} > pfls0.zrodata : FLAGS(arl){*(.zrodata)*(.zrodata.*)    } > pfls0.sdata2 : FLAGS(arsl){*(.srodata)*(.srodata.*)} > pfls0_SMALL_DATA2_ = SIZEOF(CORE_SEC(.sdata2)) ? ADDR(CORE_SEC(.sdata2)) + 32k : (ADDR(CORE_SEC(.sdata2)) & 0xF0000000) + 32k ;__A1_MEM = _SMALL_DATA2_;.rodata : FLAGS(arl){*(.rodata)*(.rodata.*)*(.gnu.linkonce.r.*)    /** Create the clear and copy tables that tell the startup code* which memory areas to clear and to copy, respectively.*/. = ALIGN(4) ;PROVIDE(__clear_table = .) ;LONG(0 + ADDR(.CPU2.zbss));     LONG(SIZEOF(.CPU2.zbss));LONG(0 + ADDR(.CPU2.bss));    LONG(SIZEOF(.CPU2.bss));LONG(0 + ADDR(.CPU1.zbss));     LONG(SIZEOF(.CPU1.zbss));LONG(0 + ADDR(.CPU1.bss));    LONG(SIZEOF(.CPU1.bss));LONG(0 + ADDR(.CPU0.zbss));     LONG(SIZEOF(.CPU0.zbss));LONG(0 + ADDR(.CPU0.bss));    LONG(SIZEOF(.CPU0.bss));LONG(0 + ADDR(.zbss));     LONG(SIZEOF(.zbss));LONG(0 + ADDR(.sbss));     LONG(SIZEOF(.sbss));LONG(0 + ADDR(.bss));    LONG(SIZEOF(.bss));LONG(0 + ADDR(.sbss4));    LONG(SIZEOF(.sbss4));LONG(0 + ADDR(.bss_emem));    LONG(SIZEOF(.bss_emem));LONG(-1);                 LONG(-1);PROVIDE(__copy_table = .) ;LONG(LOADADDR(.CPU2.zdata));    LONG(0 + ADDR(.CPU2.zdata));    LONG(SIZEOF(.CPU2.zdata));LONG(LOADADDR(.CPU2.data));    LONG(0 + ADDR(.CPU2.data));    LONG(SIZEOF(.CPU2.data));LONG(LOADADDR(.CPU1.zdata));    LONG(0 + ADDR(.CPU1.zdata));    LONG(SIZEOF(.CPU1.zdata));LONG(LOADADDR(.CPU1.data));    LONG(0 + ADDR(.CPU1.data));    LONG(SIZEOF(.CPU1.data));LONG(LOADADDR(.CPU0.zdata));    LONG(0 + ADDR(.CPU0.zdata));    LONG(SIZEOF(.CPU0.zdata));LONG(LOADADDR(.CPU0.data));    LONG(0 + ADDR(.CPU0.data));    LONG(SIZEOF(.CPU0.data));LONG(LOADADDR(.zdata));    LONG(0 + ADDR(.zdata));    LONG(SIZEOF(.zdata));LONG(LOADADDR(.sdata));    LONG(0 + ADDR(.sdata));    LONG(SIZEOF(.sdata));LONG(LOADADDR(.data));    LONG(0 + ADDR(.data));    LONG(SIZEOF(.data));LONG(LOADADDR(.data_emem));    LONG(0 + ADDR(.data_emem));    LONG(SIZEOF(.data_emem));LONG(LOADADDR(.data_lmu));    LONG(0 + ADDR(.data_lmu));    LONG(SIZEOF(.data_lmu));LONG(LOADADDR(.sdata4));    LONG(0 + ADDR(.sdata4));    LONG(SIZEOF(.sdata4));LONG(LOADADDR(.CPU0.psram_text));    LONG(0 + ADDR(.CPU0.psram_text));    LONG(SIZEOF(.CPU0.psram_text));LONG(LOADADDR(.CPU1.psram_text));    LONG(0 + ADDR(.CPU1.psram_text));    LONG(SIZEOF(.CPU1.psram_text));LONG(LOADADDR(.CPU2.psram_text));    LONG(0 + ADDR(.CPU2.psram_text));    LONG(SIZEOF(.CPU2.psram_text));LONG(-1);                 LONG(-1);                 LONG(-1);. = ALIGN(8);} > pfls0.text  : FLAGS(axl){*(.text)*(.text.*)*(.gnu.linkonce.t.*)*(.gnu.warning)        /* .gnu.warning sections are handled specially by elf32.em. */. = ALIGN(4);} > pfls0/** C++ exception handling tables.  NOTE: gcc emits .eh_frame* sections when compiling C sources with debugging enabled (-g).* If you can be sure that your final application consists* exclusively of C objects (i.e., no C++ objects), you may use* the -R option of the "strip" and "objcopy" utilities to remove* the .eh_frame section from the executable.*/.eh_frame  :{*(.gcc_except_table)__EH_FRAME_BEGIN__ = . ;KEEP (*(.eh_frame))__EH_FRAME_END__ = . ;. = ALIGN(8);} > pfls0/** Constructors and destructors.*/.ctors : FLAGS(ar){__CTOR_LIST__ = . ;LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2);*(.ctors)LONG(0) ;__CTOR_END__ = . ;. = ALIGN(8);} > pfls0.dtors : FLAGS(ar){__DTOR_LIST__ = . ;LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2);*(.dtors)LONG(0) ;__DTOR_END__ = . ;. = ALIGN(8);} > pfls0.traptab_tc2 (LCF_TRAPVEC2_START) :{PROVIDE(__TRAPTAB_CPU2 = .);KEEP (*(.traptab_cpu2));} > pfls0.traptab_tc1 (LCF_TRAPVEC1_START) :{PROVIDE(__TRAPTAB_CPU1 = .);KEEP (*(.traptab_cpu1));} > pfls0
}/*Near data sections*/CORE_ID = CPU2 ;SECTIONS
{    CORE_SEC(.zdata) (LCF_DSPR2_START): FLAGS(awzl){. = ALIGN(4) ;*(.zdata_cpu2)*(.zdata_cpu2.*)} > dsram2 AT> pfls0CORE_SEC(.zbss) (NOLOAD): FLAGS(awz){. = ALIGN(4) ;*(.zbss_cpu2)*(.zbss_cpu2.*)} > dsram2}CORE_ID = CPU1;SECTIONS
{    CORE_SEC(.zdata) (LCF_DSPR1_START): FLAGS(awzl){. = ALIGN(4) ;*(.zdata_cpu1)*(.zdata_cpu1.*)} > dsram1 AT> pfls0CORE_SEC(.zbss): FLAGS(awz){. = ALIGN(4) ;*(.zbss_cpu1)*(.zbss_cpu1.*)} > dsram1
}CORE_ID = CPU0;SECTIONS
{    CORE_SEC(.zdata) (LCF_DSPR0_START): FLAGS(awzl){. = ALIGN(4) ;*(.zdata_cpu0)*(.zdata_cpu0.*)} > dsram0 AT> pfls0CORE_SEC(.zbss) (NOLOAD): FLAGS(awz){. = ALIGN(4) ;*(.zbss_cpu0)*(.zbss_cpu0.*)} > dsram0
}/*RAM sections without cpu sufix will go to default ram defined above with REGION_ALIAS*/CORE_ID = GLOBAL;SECTIONS
{    CORE_SEC(.zdata) : FLAGS(awzl){. = ALIGN(4) ;*(.zdata)*(.zdata.*)*(.gnu.linkonce.z.*)     } > default_ram AT> pfls0CORE_SEC(.zbss) (NOLOAD) : FLAGS(awz){. = ALIGN(4) ;*(.zbss)*(.zbss.*)*(.bbss)*(.bbss.*)*(.gnu.linkonce.zb.*)    } > default_ramCORE_SEC(.sdata) : FLAGS(awsl){. = ALIGN(4) ;*(.sdata)*(.sdata.*)} > default_ram AT> pfls0_SMALL_DATA_ = SIZEOF(CORE_SEC(.sdata)) ? ADDR(CORE_SEC(.sdata)) + 32k : (ADDR(CORE_SEC(.sdata)) & 0xF0000000) + 32k ;__A0_MEM = _SMALL_DATA_;CORE_SEC(.sbss) (NOLOAD): FLAGS(aws){. = ALIGN(4) ;*(.sbss)*(.sbss.*)} > default_ramCORE_SEC(.data) : FLAGS(awl){. = ALIGN(4) ;*(.data)*(.data.*)*(.gnu.linkonce.d.*)     } > default_ram AT> pfls0CORE_SEC(.bss) (NOLOAD) : FLAGS(aw){. = ALIGN(4) ;*(.bss)*(.bss.*)*(.gnu.linkonce.b.*)     } > default_ram.heap  : FLAGS(aw){. = ALIGN(4);__HEAP = .;. += LCF_HEAP_SIZE;__HEAP_END = .;} > default_ram
}CORE_ID = CPU2 ;SECTIONS
{    CORE_SEC(.data) : FLAGS(awl){. = ALIGN(4) ;*(.data_cpu2)*(.data_cpu2.*)} > dsram2 AT> pfls0CORE_SEC(.bss) (NOLOAD): FLAGS(aw){. = ALIGN(4) ;*(.bss_cpu2)*(.bss_cpu2.*)} > dsram2
}CORE_ID = CPU1;SECTIONS
{    CORE_SEC(.data) : FLAGS(awl){. = ALIGN(4) ;*(.data_cpu1)*(.data_cpu1.*)} > dsram1 AT> pfls0CORE_SEC(.bss) (NOLOAD): FLAGS(aw){. = ALIGN(4) ;*(.bss_cpu1)*(.bss_cpu1.*)} > dsram1
}CORE_ID = CPU0;SECTIONS
{    CORE_SEC(.data) : FLAGS(awl){. = ALIGN(4) ;*(.data_cpu0)*(.data_cpu0.*)} > dsram0 AT> pfls0CORE_SEC(.bss) (NOLOAD): FLAGS(aw){. = ALIGN(4) ;*(.bss_cpu0)*(.bss_cpu0.*)} > dsram0CORE_SEC(.psram_text)  : FLAGS(awx){. = ALIGN(2);*(.cpu0_psram)} > psram0 AT> pfls0
}CORE_ID = CPU2 ;SECTIONS
{    CORE_SEC(.ustack) (LCF_DSPR2_START + LCF_USTACK2_OFFSET):{PROVIDE(__USTACK2_END = .);. = . + LCF_USTACK2_SIZE;PROVIDE(__USTACK2 = .);} > dsram2CORE_SEC(.istack) (LCF_DSPR2_START + LCF_ISTACK2_OFFSET):{PROVIDE(__ISTACK2_END = .);. = . + LCF_ISTACK2_SIZE;PROVIDE(__ISTACK2 = .);} > dsram2CORE_SEC(.csa) (LCF_DSPR2_START + LCF_CSA2_OFFSET):{PROVIDE(__CSA2 = .);. = . + LCF_CSA2_SIZE;PROVIDE(__CSA2_END = .);} > dsram2CORE_SEC(.psram_text)  : FLAGS(awx){. = ALIGN(2);*(.cpu2_psram)} > psram2 AT> pfls0
}CORE_ID = CPU1;SECTIONS
{CORE_SEC(.ustack) (LCF_DSPR1_START + LCF_USTACK1_OFFSET):{PROVIDE(__USTACK1_END = .);. = . + LCF_USTACK1_SIZE;PROVIDE(__USTACK1 = .);} > dsram1CORE_SEC(.istack) (LCF_DSPR1_START + LCF_ISTACK1_OFFSET):{PROVIDE(__ISTACK1_END = .);. = . + LCF_ISTACK1_SIZE;PROVIDE(__ISTACK1 = .);} > dsram1CORE_SEC(.csa) (LCF_DSPR1_START + LCF_CSA1_OFFSET):{PROVIDE(__CSA1 = .);. = . + LCF_CSA1_SIZE;PROVIDE(__CSA1_END = .);} > dsram1CORE_SEC(.psram_text)  : FLAGS(awx){. = ALIGN(2);*(.cpu1_psram)} > psram1 AT> pfls0
}CORE_ID = CPU0;SECTIONS
{    CORE_SEC(.ustack) (LCF_DSPR0_START + LCF_USTACK0_OFFSET):{PROVIDE(__USTACK0_END = .);. = . + LCF_USTACK0_SIZE;PROVIDE(__USTACK0 = .);} > dsram0CORE_SEC(.istack) (LCF_DSPR0_START + LCF_ISTACK0_OFFSET):{PROVIDE(__ISTACK0_END = .);. = . + LCF_ISTACK0_SIZE;PROVIDE(__ISTACK0 = .);} > dsram0CORE_SEC(.csa) (LCF_DSPR0_START + LCF_CSA0_OFFSET):{PROVIDE(__CSA0 = .);. = . + LCF_CSA0_SIZE;PROVIDE(__CSA0_END = .);} > dsram0
}    CORE_ID = GLOBAL;SECTIONS
{        CORE_SEC(.sdata3) : FLAGS(arsl){*(.rodata_a8)*(.rodata_a8.*)} > pfls0_SMALL_DATA3_ = SIZEOF(CORE_SEC(.sdata3)) ? ADDR(CORE_SEC(.sdata3)) + 32k : (ADDR(CORE_SEC(.sdata3)) & 0xF0000000) + 32k ;__A8_MEM = _SMALL_DATA3_;.data_lmu : FLAGS(awl){*(.lmudata)*(.lmudata.*)} > lmuram AT> pfls0.bss_lmu (NOLOAD): FLAGS(aw){*(.lmubss)*(.lmubss.*)} > lmuram.sdata4 : FLAGS(awsl){*(.sdata_a9)*(.sdata_a9.*)*(.lmu_data)*(.lmu_data.*)} > lmuram AT> pfls0.sbss4 (NOLOAD): FLAGS(aws){*(.sbss_a9)*(.sbss_a9.*)*(.lmu_bss)*(.lmu_bss.*)} > lmuram_SMALL_DATA4_ = SIZEOF(.sdata4) ? ADDR(.sdata4) + 32k : (ADDR(.sdata4) & 0xF0000000) + 32k ;__A9_MEM = _SMALL_DATA4_;.data_emem : FLAGS(awl){. = ALIGN(4) ;*(.data_emem)*(.data_emem.*)*(.gnu.linkonce.d.*)     } > edmem_nc AT> pfls0.bss_emem (NOLOAD) : FLAGS(aw){. = ALIGN(4) ;*(.bss_emem)*(.bss_emem.*)*(.gnu.linkonce.b.*)     } > edmem_nc.inttab_tc0_000 (LCF_INTVEC0_START + 0x0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_0)); } > pfls0.inttab_tc0_001 (LCF_INTVEC0_START + 0x20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_1)); } > pfls0.inttab_tc0_002 (LCF_INTVEC0_START + 0x40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_2)); } > pfls0.inttab_tc0_003 (LCF_INTVEC0_START + 0x60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_3)); } > pfls0.inttab_tc0_004 (LCF_INTVEC0_START + 0x80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_4)); } > pfls0.inttab_tc0_005 (LCF_INTVEC0_START + 0xA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_5)); } > pfls0.inttab_tc0_006 (LCF_INTVEC0_START + 0xC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_6)); } > pfls0.inttab_tc0_007 (LCF_INTVEC0_START + 0xE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_7)); } > pfls0.inttab_tc0_008 (LCF_INTVEC0_START + 0x100) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_8)); } > pfls0.inttab_tc0_009 (LCF_INTVEC0_START + 0x120) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_9)); } > pfls0.inttab_tc0_00A (LCF_INTVEC0_START + 0x140) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_10)); } > pfls0.inttab_tc0_00B (LCF_INTVEC0_START + 0x160) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_11)); } > pfls0.inttab_tc0_00C (LCF_INTVEC0_START + 0x180) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_12)); } > pfls0.inttab_tc0_00D (LCF_INTVEC0_START + 0x1A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_13)); } > pfls0.inttab_tc0_00E (LCF_INTVEC0_START + 0x1C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_14)); } > pfls0.inttab_tc0_00F (LCF_INTVEC0_START + 0x1E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_15)); } > pfls0.inttab_tc0_010 (LCF_INTVEC0_START + 0x200) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_16)); } > pfls0.inttab_tc0_011 (LCF_INTVEC0_START + 0x220) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_17)); } > pfls0.inttab_tc0_012 (LCF_INTVEC0_START + 0x240) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_18)); } > pfls0.inttab_tc0_013 (LCF_INTVEC0_START + 0x260) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_19)); } > pfls0.inttab_tc0_014 (LCF_INTVEC0_START + 0x280) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_20)); } > pfls0.inttab_tc0_015 (LCF_INTVEC0_START + 0x2A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_21)); } > pfls0.inttab_tc0_016 (LCF_INTVEC0_START + 0x2C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_22)); } > pfls0.inttab_tc0_017 (LCF_INTVEC0_START + 0x2E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_23)); } > pfls0.inttab_tc0_018 (LCF_INTVEC0_START + 0x300) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_24)); } > pfls0.inttab_tc0_019 (LCF_INTVEC0_START + 0x320) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_25)); } > pfls0.inttab_tc0_01A (LCF_INTVEC0_START + 0x340) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_26)); } > pfls0.inttab_tc0_01B (LCF_INTVEC0_START + 0x360) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_27)); } > pfls0.inttab_tc0_01C (LCF_INTVEC0_START + 0x380) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_28)); } > pfls0.inttab_tc0_01D (LCF_INTVEC0_START + 0x3A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_29)); } > pfls0.inttab_tc0_01E (LCF_INTVEC0_START + 0x3C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_30)); } > pfls0.inttab_tc0_01F (LCF_INTVEC0_START + 0x3E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_31)); } > pfls0.inttab_tc0_020 (LCF_INTVEC0_START + 0x400) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_32)); } > pfls0.inttab_tc0_021 (LCF_INTVEC0_START + 0x420) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_33)); } > pfls0.inttab_tc0_022 (LCF_INTVEC0_START + 0x440) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_34)); } > pfls0.inttab_tc0_023 (LCF_INTVEC0_START + 0x460) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_35)); } > pfls0.inttab_tc0_024 (LCF_INTVEC0_START + 0x480) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_36)); } > pfls0.inttab_tc0_025 (LCF_INTVEC0_START + 0x4A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_37)); } > pfls0.inttab_tc0_026 (LCF_INTVEC0_START + 0x4C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_38)); } > pfls0.inttab_tc0_027 (LCF_INTVEC0_START + 0x4E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_39)); } > pfls0.inttab_tc0_028 (LCF_INTVEC0_START + 0x500) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_40)); } > pfls0.inttab_tc0_029 (LCF_INTVEC0_START + 0x520) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_41)); } > pfls0.inttab_tc0_02A (LCF_INTVEC0_START + 0x540) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_42)); } > pfls0.inttab_tc0_02B (LCF_INTVEC0_START + 0x560) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_43)); } > pfls0.inttab_tc0_02C (LCF_INTVEC0_START + 0x580) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_44)); } > pfls0.inttab_tc0_02D (LCF_INTVEC0_START + 0x5A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_45)); } > pfls0.inttab_tc0_02E (LCF_INTVEC0_START + 0x5C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_46)); } > pfls0.inttab_tc0_02F (LCF_INTVEC0_START + 0x5E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_47)); } > pfls0.inttab_tc0_030 (LCF_INTVEC0_START + 0x600) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_48)); } > pfls0.inttab_tc0_031 (LCF_INTVEC0_START + 0x620) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_49)); } > pfls0.inttab_tc0_032 (LCF_INTVEC0_START + 0x640) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_50)); } > pfls0.inttab_tc0_033 (LCF_INTVEC0_START + 0x660) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_51)); } > pfls0.inttab_tc0_034 (LCF_INTVEC0_START + 0x680) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_52)); } > pfls0.inttab_tc0_035 (LCF_INTVEC0_START + 0x6A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_53)); } > pfls0.inttab_tc0_036 (LCF_INTVEC0_START + 0x6C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_54)); } > pfls0.inttab_tc0_037 (LCF_INTVEC0_START + 0x6E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_55)); } > pfls0.inttab_tc0_038 (LCF_INTVEC0_START + 0x700) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_56)); } > pfls0.inttab_tc0_039 (LCF_INTVEC0_START + 0x720) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_57)); } > pfls0.inttab_tc0_03A (LCF_INTVEC0_START + 0x740) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_58)); } > pfls0.inttab_tc0_03B (LCF_INTVEC0_START + 0x760) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_59)); } > pfls0.inttab_tc0_03C (LCF_INTVEC0_START + 0x780) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_60)); } > pfls0.inttab_tc0_03D (LCF_INTVEC0_START + 0x7A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_61)); } > pfls0.inttab_tc0_03E (LCF_INTVEC0_START + 0x7C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_62)); } > pfls0.inttab_tc0_03F (LCF_INTVEC0_START + 0x7E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_63)); } > pfls0.inttab_tc0_040 (LCF_INTVEC0_START + 0x800) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_64)); } > pfls0.inttab_tc0_041 (LCF_INTVEC0_START + 0x820) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_65)); } > pfls0.inttab_tc0_042 (LCF_INTVEC0_START + 0x840) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_66)); } > pfls0.inttab_tc0_043 (LCF_INTVEC0_START + 0x860) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_67)); } > pfls0.inttab_tc0_044 (LCF_INTVEC0_START + 0x880) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_68)); } > pfls0.inttab_tc0_045 (LCF_INTVEC0_START + 0x8A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_69)); } > pfls0.inttab_tc0_046 (LCF_INTVEC0_START + 0x8C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_70)); } > pfls0.inttab_tc0_047 (LCF_INTVEC0_START + 0x8E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_71)); } > pfls0.inttab_tc0_048 (LCF_INTVEC0_START + 0x900) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_72)); } > pfls0.inttab_tc0_049 (LCF_INTVEC0_START + 0x920) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_73)); } > pfls0.inttab_tc0_04A (LCF_INTVEC0_START + 0x940) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_74)); } > pfls0.inttab_tc0_04B (LCF_INTVEC0_START + 0x960) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_75)); } > pfls0.inttab_tc0_04C (LCF_INTVEC0_START + 0x980) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_76)); } > pfls0.inttab_tc0_04D (LCF_INTVEC0_START + 0x9A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_77)); } > pfls0.inttab_tc0_04E (LCF_INTVEC0_START + 0x9C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_78)); } > pfls0.inttab_tc0_04F (LCF_INTVEC0_START + 0x9E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_79)); } > pfls0.inttab_tc0_050 (LCF_INTVEC0_START + 0xA00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_80)); } > pfls0.inttab_tc0_051 (LCF_INTVEC0_START + 0xA20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_81)); } > pfls0.inttab_tc0_052 (LCF_INTVEC0_START + 0xA40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_82)); } > pfls0.inttab_tc0_053 (LCF_INTVEC0_START + 0xA60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_83)); } > pfls0.inttab_tc0_054 (LCF_INTVEC0_START + 0xA80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_84)); } > pfls0.inttab_tc0_055 (LCF_INTVEC0_START + 0xAA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_85)); } > pfls0.inttab_tc0_056 (LCF_INTVEC0_START + 0xAC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_86)); } > pfls0.inttab_tc0_057 (LCF_INTVEC0_START + 0xAE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_87)); } > pfls0.inttab_tc0_058 (LCF_INTVEC0_START + 0xB00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_88)); } > pfls0.inttab_tc0_059 (LCF_INTVEC0_START + 0xB20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_89)); } > pfls0.inttab_tc0_05A (LCF_INTVEC0_START + 0xB40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_90)); } > pfls0.inttab_tc0_05B (LCF_INTVEC0_START + 0xB60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_91)); } > pfls0.inttab_tc0_05C (LCF_INTVEC0_START + 0xB80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_92)); } > pfls0.inttab_tc0_05D (LCF_INTVEC0_START + 0xBA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_93)); } > pfls0.inttab_tc0_05E (LCF_INTVEC0_START + 0xBC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_94)); } > pfls0.inttab_tc0_05F (LCF_INTVEC0_START + 0xBE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_95)); } > pfls0.inttab_tc0_060 (LCF_INTVEC0_START + 0xC00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_96)); } > pfls0.inttab_tc0_061 (LCF_INTVEC0_START + 0xC20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_97)); } > pfls0.inttab_tc0_062 (LCF_INTVEC0_START + 0xC40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_98)); } > pfls0.inttab_tc0_063 (LCF_INTVEC0_START + 0xC60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_99)); } > pfls0.inttab_tc0_064 (LCF_INTVEC0_START + 0xC80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_100)); } > pfls0.inttab_tc0_065 (LCF_INTVEC0_START + 0xCA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_101)); } > pfls0.inttab_tc0_066 (LCF_INTVEC0_START + 0xCC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_102)); } > pfls0.inttab_tc0_067 (LCF_INTVEC0_START + 0xCE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_103)); } > pfls0.inttab_tc0_068 (LCF_INTVEC0_START + 0xD00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_104)); } > pfls0.inttab_tc0_069 (LCF_INTVEC0_START + 0xD20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_105)); } > pfls0.inttab_tc0_06A (LCF_INTVEC0_START + 0xD40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_106)); } > pfls0.inttab_tc0_06B (LCF_INTVEC0_START + 0xD60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_107)); } > pfls0.inttab_tc0_06C (LCF_INTVEC0_START + 0xD80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_108)); } > pfls0.inttab_tc0_06D (LCF_INTVEC0_START + 0xDA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_109)); } > pfls0.inttab_tc0_06E (LCF_INTVEC0_START + 0xDC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_110)); } > pfls0.inttab_tc0_06F (LCF_INTVEC0_START + 0xDE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_111)); } > pfls0.inttab_tc0_070 (LCF_INTVEC0_START + 0xE00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_112)); } > pfls0.inttab_tc0_071 (LCF_INTVEC0_START + 0xE20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_113)); } > pfls0.inttab_tc0_072 (LCF_INTVEC0_START + 0xE40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_114)); } > pfls0.inttab_tc0_073 (LCF_INTVEC0_START + 0xE60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_115)); } > pfls0.inttab_tc0_074 (LCF_INTVEC0_START + 0xE80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_116)); } > pfls0.inttab_tc0_075 (LCF_INTVEC0_START + 0xEA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_117)); } > pfls0.inttab_tc0_076 (LCF_INTVEC0_START + 0xEC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_118)); } > pfls0.inttab_tc0_077 (LCF_INTVEC0_START + 0xEE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_119)); } > pfls0.inttab_tc0_078 (LCF_INTVEC0_START + 0xF00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_120)); } > pfls0.inttab_tc0_079 (LCF_INTVEC0_START + 0xF20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_121)); } > pfls0.inttab_tc0_07A (LCF_INTVEC0_START + 0xF40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_122)); } > pfls0.inttab_tc0_07B (LCF_INTVEC0_START + 0xF60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_123)); } > pfls0.inttab_tc0_07C (LCF_INTVEC0_START + 0xF80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_124)); } > pfls0.inttab_tc0_07D (LCF_INTVEC0_START + 0xFA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_125)); } > pfls0.inttab_tc0_07E (LCF_INTVEC0_START + 0xFC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_126)); } > pfls0.inttab_tc0_07F (LCF_INTVEC0_START + 0xFE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_127)); } > pfls0.inttab_tc0_080 (LCF_INTVEC0_START + 0x1000) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_128)); } > pfls0.inttab_tc0_081 (LCF_INTVEC0_START + 0x1020) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_129)); } > pfls0.inttab_tc0_082 (LCF_INTVEC0_START + 0x1040) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_130)); } > pfls0.inttab_tc0_083 (LCF_INTVEC0_START + 0x1060) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_131)); } > pfls0.inttab_tc0_084 (LCF_INTVEC0_START + 0x1080) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_132)); } > pfls0.inttab_tc0_085 (LCF_INTVEC0_START + 0x10A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_133)); } > pfls0.inttab_tc0_086 (LCF_INTVEC0_START + 0x10C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_134)); } > pfls0.inttab_tc0_087 (LCF_INTVEC0_START + 0x10E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_135)); } > pfls0.inttab_tc0_088 (LCF_INTVEC0_START + 0x1100) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_136)); } > pfls0.inttab_tc0_089 (LCF_INTVEC0_START + 0x1120) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_137)); } > pfls0.inttab_tc0_08A (LCF_INTVEC0_START + 0x1140) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_138)); } > pfls0.inttab_tc0_08B (LCF_INTVEC0_START + 0x1160) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_139)); } > pfls0.inttab_tc0_08C (LCF_INTVEC0_START + 0x1180) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_140)); } > pfls0.inttab_tc0_08D (LCF_INTVEC0_START + 0x11A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_141)); } > pfls0.inttab_tc0_08E (LCF_INTVEC0_START + 0x11C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_142)); } > pfls0.inttab_tc0_08F (LCF_INTVEC0_START + 0x11E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_143)); } > pfls0.inttab_tc0_090 (LCF_INTVEC0_START + 0x1200) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_144)); } > pfls0.inttab_tc0_091 (LCF_INTVEC0_START + 0x1220) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_145)); } > pfls0.inttab_tc0_092 (LCF_INTVEC0_START + 0x1240) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_146)); } > pfls0.inttab_tc0_093 (LCF_INTVEC0_START + 0x1260) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_147)); } > pfls0.inttab_tc0_094 (LCF_INTVEC0_START + 0x1280) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_148)); } > pfls0.inttab_tc0_095 (LCF_INTVEC0_START + 0x12A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_149)); } > pfls0.inttab_tc0_096 (LCF_INTVEC0_START + 0x12C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_150)); } > pfls0.inttab_tc0_097 (LCF_INTVEC0_START + 0x12E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_151)); } > pfls0.inttab_tc0_098 (LCF_INTVEC0_START + 0x1300) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_152)); } > pfls0.inttab_tc0_099 (LCF_INTVEC0_START + 0x1320) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_153)); } > pfls0.inttab_tc0_09A (LCF_INTVEC0_START + 0x1340) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_154)); } > pfls0.inttab_tc0_09B (LCF_INTVEC0_START + 0x1360) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_155)); } > pfls0.inttab_tc0_09C (LCF_INTVEC0_START + 0x1380) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_156)); } > pfls0.inttab_tc0_09D (LCF_INTVEC0_START + 0x13A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_157)); } > pfls0.inttab_tc0_09E (LCF_INTVEC0_START + 0x13C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_158)); } > pfls0.inttab_tc0_09F (LCF_INTVEC0_START + 0x13E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_159)); } > pfls0.inttab_tc0_0A0 (LCF_INTVEC0_START + 0x1400) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_160)); } > pfls0.inttab_tc0_0A1 (LCF_INTVEC0_START + 0x1420) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_161)); } > pfls0.inttab_tc0_0A2 (LCF_INTVEC0_START + 0x1440) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_162)); } > pfls0.inttab_tc0_0A3 (LCF_INTVEC0_START + 0x1460) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_163)); } > pfls0.inttab_tc0_0A4 (LCF_INTVEC0_START + 0x1480) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_164)); } > pfls0.inttab_tc0_0A5 (LCF_INTVEC0_START + 0x14A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_165)); } > pfls0.inttab_tc0_0A6 (LCF_INTVEC0_START + 0x14C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_166)); } > pfls0.inttab_tc0_0A7 (LCF_INTVEC0_START + 0x14E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_167)); } > pfls0.inttab_tc0_0A8 (LCF_INTVEC0_START + 0x1500) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_168)); } > pfls0.inttab_tc0_0A9 (LCF_INTVEC0_START + 0x1520) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_169)); } > pfls0.inttab_tc0_0AA (LCF_INTVEC0_START + 0x1540) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_170)); } > pfls0.inttab_tc0_0AB (LCF_INTVEC0_START + 0x1560) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_171)); } > pfls0.inttab_tc0_0AC (LCF_INTVEC0_START + 0x1580) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_172)); } > pfls0.inttab_tc0_0AD (LCF_INTVEC0_START + 0x15A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_173)); } > pfls0.inttab_tc0_0AE (LCF_INTVEC0_START + 0x15C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_174)); } > pfls0.inttab_tc0_0AF (LCF_INTVEC0_START + 0x15E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_175)); } > pfls0.inttab_tc0_0B0 (LCF_INTVEC0_START + 0x1600) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_176)); } > pfls0.inttab_tc0_0B1 (LCF_INTVEC0_START + 0x1620) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_177)); } > pfls0.inttab_tc0_0B2 (LCF_INTVEC0_START + 0x1640) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_178)); } > pfls0.inttab_tc0_0B3 (LCF_INTVEC0_START + 0x1660) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_179)); } > pfls0.inttab_tc0_0B4 (LCF_INTVEC0_START + 0x1680) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_180)); } > pfls0.inttab_tc0_0B5 (LCF_INTVEC0_START + 0x16A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_181)); } > pfls0.inttab_tc0_0B6 (LCF_INTVEC0_START + 0x16C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_182)); } > pfls0.inttab_tc0_0B7 (LCF_INTVEC0_START + 0x16E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_183)); } > pfls0.inttab_tc0_0B8 (LCF_INTVEC0_START + 0x1700) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_184)); } > pfls0.inttab_tc0_0B9 (LCF_INTVEC0_START + 0x1720) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_185)); } > pfls0.inttab_tc0_0BA (LCF_INTVEC0_START + 0x1740) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_186)); } > pfls0.inttab_tc0_0BB (LCF_INTVEC0_START + 0x1760) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_187)); } > pfls0.inttab_tc0_0BC (LCF_INTVEC0_START + 0x1780) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_188)); } > pfls0.inttab_tc0_0BD (LCF_INTVEC0_START + 0x17A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_189)); } > pfls0.inttab_tc0_0BE (LCF_INTVEC0_START + 0x17C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_190)); } > pfls0.inttab_tc0_0BF (LCF_INTVEC0_START + 0x17E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_191)); } > pfls0.inttab_tc0_0C0 (LCF_INTVEC0_START + 0x1800) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_192)); } > pfls0.inttab_tc0_0C1 (LCF_INTVEC0_START + 0x1820) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_193)); } > pfls0.inttab_tc0_0C2 (LCF_INTVEC0_START + 0x1840) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_194)); } > pfls0.inttab_tc0_0C3 (LCF_INTVEC0_START + 0x1860) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_195)); } > pfls0.inttab_tc0_0C4 (LCF_INTVEC0_START + 0x1880) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_196)); } > pfls0.inttab_tc0_0C5 (LCF_INTVEC0_START + 0x18A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_197)); } > pfls0.inttab_tc0_0C6 (LCF_INTVEC0_START + 0x18C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_198)); } > pfls0.inttab_tc0_0C7 (LCF_INTVEC0_START + 0x18E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_199)); } > pfls0.inttab_tc0_0C8 (LCF_INTVEC0_START + 0x1900) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_200)); } > pfls0.inttab_tc0_0C9 (LCF_INTVEC0_START + 0x1920) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_201)); } > pfls0.inttab_tc0_0CA (LCF_INTVEC0_START + 0x1940) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_202)); } > pfls0.inttab_tc0_0CB (LCF_INTVEC0_START + 0x1960) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_203)); } > pfls0.inttab_tc0_0CC (LCF_INTVEC0_START + 0x1980) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_204)); } > pfls0.inttab_tc0_0CD (LCF_INTVEC0_START + 0x19A0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_205)); } > pfls0.inttab_tc0_0CE (LCF_INTVEC0_START + 0x19C0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_206)); } > pfls0.inttab_tc0_0CF (LCF_INTVEC0_START + 0x19E0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_207)); } > pfls0.inttab_tc0_0D0 (LCF_INTVEC0_START + 0x1A00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_208)); } > pfls0.inttab_tc0_0D1 (LCF_INTVEC0_START + 0x1A20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_209)); } > pfls0.inttab_tc0_0D2 (LCF_INTVEC0_START + 0x1A40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_210)); } > pfls0.inttab_tc0_0D3 (LCF_INTVEC0_START + 0x1A60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_211)); } > pfls0.inttab_tc0_0D4 (LCF_INTVEC0_START + 0x1A80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_212)); } > pfls0.inttab_tc0_0D5 (LCF_INTVEC0_START + 0x1AA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_213)); } > pfls0.inttab_tc0_0D6 (LCF_INTVEC0_START + 0x1AC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_214)); } > pfls0.inttab_tc0_0D7 (LCF_INTVEC0_START + 0x1AE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_215)); } > pfls0.inttab_tc0_0D8 (LCF_INTVEC0_START + 0x1B00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_216)); } > pfls0.inttab_tc0_0D9 (LCF_INTVEC0_START + 0x1B20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_217)); } > pfls0.inttab_tc0_0DA (LCF_INTVEC0_START + 0x1B40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_218)); } > pfls0.inttab_tc0_0DB (LCF_INTVEC0_START + 0x1B60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_219)); } > pfls0.inttab_tc0_0DC (LCF_INTVEC0_START + 0x1B80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_220)); } > pfls0.inttab_tc0_0DD (LCF_INTVEC0_START + 0x1BA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_221)); } > pfls0.inttab_tc0_0DE (LCF_INTVEC0_START + 0x1BC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_222)); } > pfls0.inttab_tc0_0DF (LCF_INTVEC0_START + 0x1BE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_223)); } > pfls0.inttab_tc0_0E0 (LCF_INTVEC0_START + 0x1C00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_224)); } > pfls0.inttab_tc0_0E1 (LCF_INTVEC0_START + 0x1C20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_225)); } > pfls0.inttab_tc0_0E2 (LCF_INTVEC0_START + 0x1C40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_226)); } > pfls0.inttab_tc0_0E3 (LCF_INTVEC0_START + 0x1C60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_227)); } > pfls0.inttab_tc0_0E4 (LCF_INTVEC0_START + 0x1C80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_228)); } > pfls0.inttab_tc0_0E5 (LCF_INTVEC0_START + 0x1CA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_229)); } > pfls0.inttab_tc0_0E6 (LCF_INTVEC0_START + 0x1CC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_230)); } > pfls0.inttab_tc0_0E7 (LCF_INTVEC0_START + 0x1CE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_231)); } > pfls0.inttab_tc0_0E8 (LCF_INTVEC0_START + 0x1D00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_232)); } > pfls0.inttab_tc0_0E9 (LCF_INTVEC0_START + 0x1D20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_233)); } > pfls0.inttab_tc0_0EA (LCF_INTVEC0_START + 0x1D40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_234)); } > pfls0.inttab_tc0_0EB (LCF_INTVEC0_START + 0x1D60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_235)); } > pfls0.inttab_tc0_0EC (LCF_INTVEC0_START + 0x1D80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_236)); } > pfls0.inttab_tc0_0ED (LCF_INTVEC0_START + 0x1DA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_237)); } > pfls0.inttab_tc0_0EE (LCF_INTVEC0_START + 0x1DC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_238)); } > pfls0.inttab_tc0_0EF (LCF_INTVEC0_START + 0x1DE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_239)); } > pfls0.inttab_tc0_0F0 (LCF_INTVEC0_START + 0x1E00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_240)); } > pfls0.inttab_tc0_0F1 (LCF_INTVEC0_START + 0x1E20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_241)); } > pfls0.inttab_tc0_0F2 (LCF_INTVEC0_START + 0x1E40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_242)); } > pfls0.inttab_tc0_0F3 (LCF_INTVEC0_START + 0x1E60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_243)); } > pfls0.inttab_tc0_0F4 (LCF_INTVEC0_START + 0x1E80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_244)); } > pfls0.inttab_tc0_0F5 (LCF_INTVEC0_START + 0x1EA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_245)); } > pfls0.inttab_tc0_0F6 (LCF_INTVEC0_START + 0x1EC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_246)); } > pfls0.inttab_tc0_0F7 (LCF_INTVEC0_START + 0x1EE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_247)); } > pfls0.inttab_tc0_0F8 (LCF_INTVEC0_START + 0x1F00) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_248)); } > pfls0.inttab_tc0_0F9 (LCF_INTVEC0_START + 0x1F20) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_249)); } > pfls0.inttab_tc0_0FA (LCF_INTVEC0_START + 0x1F40) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_250)); } > pfls0.inttab_tc0_0FB (LCF_INTVEC0_START + 0x1F60) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_251)); } > pfls0.inttab_tc0_0FC (LCF_INTVEC0_START + 0x1F80) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_252)); } > pfls0.inttab_tc0_0FD (LCF_INTVEC0_START + 0x1FA0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_253)); } > pfls0.inttab_tc0_0FE (LCF_INTVEC0_START + 0x1FC0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_254)); } > pfls0.inttab_tc0_0FF (LCF_INTVEC0_START + 0x1FE0) : { . = ALIGN(8) ;  KEEP (*(.intvec_tc0_255)); } > pfls0__INTTAB_CPU0 = LCF_INTVEC0_START;__INTTAB_CPU1 = LCF_INTVEC0_START; /*Single interrupt table for all CPUs*/__INTTAB_CPU2 = LCF_INTVEC0_START; /*Single interrupt table for all CPUs*//** DWARF debug sections.* Symbols in the DWARF debugging sections are relative to the* beginning of the section, so we begin them at 0.*//** DWARF 1*/.comment         0 : { *(.comment) }.debug           0 : { *(.debug) }.line            0 : { *(.line) }/** GNU DWARF 1 extensions*/.debug_srcinfo   0 : { *(.debug_srcinfo) }.debug_sfnames   0 : { *(.debug_sfnames) }/** DWARF 1.1 and DWARF 2*/.debug_aranges   0 : { *(.debug_aranges) }.debug_pubnames  0 : { *(.debug_pubnames) }/** DWARF 2*/.debug_info      0 : { *(.debug_info) }.debug_abbrev    0 : { *(.debug_abbrev) }.debug_line      0 : { *(.debug_line) }.debug_frame     0 : { *(.debug_frame) }.debug_str       0 : { *(.debug_str) }.debug_loc       0 : { *(.debug_loc) }.debug_macinfo   0 : { *(.debug_macinfo) }.debug_ranges    0 : { *(.debug_ranges) }/** SGI/MIPS DWARF 2 extensions*/.debug_weaknames 0 : { *(.debug_weaknames) }.debug_funcnames 0 : { *(.debug_funcnames) }.debug_typenames 0 : { *(.debug_typenames) }.debug_varnames  0 : { *(.debug_varnames) }/** Optional sections that may only appear when relocating.*//** Optional sections that may appear regardless of relocating.*/.version_info    0 : { *(.version_info) }.boffs           0 : { KEEP (*(.boffs)) }
}

转载于:https://www.cnblogs.com/uestcliming666/p/11456217.html

链接脚本(Linker Script)用法解析(一) 关键字SECTIONS与MEMORY相关推荐

  1. 链接脚本(Linker Scripts)语法和规则解析(翻译自官方手册)

    原链接:链接脚本(Linker Scripts)语法和规则解析(翻译自官方手册)_BSP-路人甲的博客-CSDN博客_链接脚本语法 为了便于与英文原文对照学习与理解(部分翻译可能不准确),本文中的每个 ...

  2. 链接脚本(Linker Script)解析

    每一个嵌入式开发工程师,在工作越来越深入后,都会慢慢接触到链接脚本,那么什么是链接脚本,我们又该如何结合实际去做自己的链接脚本呢? 一.什么是链接脚本 链接脚本实质上是一个规则文件,程序员用来只会链接 ...

  3. 【Kafka】kafka 脚本kafka-configs.sh用法解析

    1.概述 引用博客来自李志涛:https://www.cnblogs.com/lizherui/p/12275193.html 参考:https://www.cnblogs.com/lvcisco/p ...

  4. Linux下的lds链接脚本详解

    一. 概论 每一个链接过程都由链接脚本(linker script, 一般以lds作为文件的后缀名)控制. 链接脚本主要用于规定如何把输入文件内的section放入输出文件内, 并控制输出文件内各部分 ...

  5. 编译链接脚本lds文件

    转载自:http://linux.chinaunix.net/techdoc/beginner/2009/08/12/1129972.shtml 一. 概论 每一个链接过程都由链接脚本(linker ...

  6. linux下lds链接脚本详解

    转载自:http://linux.chinaunix.net/techdoc/beginner/2009/08/12/1129972.shtml 一. 概论 每一个链接过程都由链接脚本(linker ...

  7. linux 链接脚本,Linux下的lds链接脚本简介(一)

    每一个链接过程都由链接脚本(linker script, 一般以lds作为文件的后缀名)控制. 链接脚本主要用于规定如何把输入文件内的section放入输出文件内, 并控制输出文件内各部分在程序地址空 ...

  8. 链接脚本文件-Linker script file

    连接器(Linker)会将一个或多个目标文件(.0 file)整合成一个可执行文件(.hex file). 如单个源文件test.c经过编译后会生成一个目标文件test.o,test.o文件内容会细分 ...

  9. Linker Scripts3--简单的链接脚本命令2-Assigning Values to Symbols

    1.前言 本章继续讲述简单脚本命令的后半部分 2.Assigning Values to Symbols 你可以给一个符号(symbol)赋值,它会把这些定义的符号放入全局符号表(symbols ta ...

  10. LD链接脚本解析-STM32F4xx

    本篇文章主要围绕项目 STM32_RTOS_GUN 的链接脚本 STM32F417IG_FLASH.ld 进行分析,同时对编写链接脚本的方法进行相应的讲解,尽可能地做到通过阅读这篇文章后能够学会编写简 ...

最新文章

  1. A Grain of Sand 一粒沙子
  2. vForum 2008系列之七:主题演讲:虚拟化的未来
  3. Linux Shell 1/dev/null 21 含义
  4. python在福州能找到工作吗_如果只会Python能不能找到工作
  5. c语言操作access数据类型,2016计算机二级《ACCESS》基本操作题及答案
  6. ASP.NET Core:从ASP.NET Web API迁移的多层数据服务应用程序
  7. Android 再爆新漏洞,9.0 以下所有手机全部中招!
  8. TypeScript--函数
  9. 自定义控件2.第一个自定义view
  10. CImage 从内存中读取图像
  11. 关于JavaScript学习,推荐博客及书籍
  12. Evolutionary Learning: Advances in Theories and Algorithms PART I
  13. VOB视频格式转换器怎么把vob转换为mp3
  14. 一次在中英街不爽的购物体验
  15. 蘑菇街测试开发实习生面经
  16. avi文件是什么?avi文件格式介绍
  17. 中缀转后缀表达式并计算
  18. windows获取显卡的显存
  19. 【转】关于IE7 z-index问题完美解决方案
  20. Verilog实现移位寄存器

热门文章

  1. win10用户账号密码重置
  2. 趣味运动会项目及规则
  3. win10下使用pycharm实现基于pyg的cora+citeseer+pubmed数据集的JKNET模型测试
  4. 微信公众号 网页授权登入
  5. 优化matlab运行速度的方案
  6. java的重载和重写实例_java中重写和重载的区别
  7. python cv2 利用掩膜将图片透明背景
  8. Excel单元格设灰色及锁定
  9. python职场应用英语作文_春考关于职场应用的英语作文
  10. 微信小程序服务商接入流程