diff options
author | peter <peter@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2005-09-18 21:16:10 +0000 |
---|---|---|
committer | peter <peter@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2005-09-18 21:16:10 +0000 |
commit | f85dca06373a868cb3dd886d0728f36f93d5b795 (patch) | |
tree | 3e6e8b29eaf713710242d5f953c753f9ccb720ff /compiler/sparc | |
parent | b88de5cbf7800257ec145815bcd7f38e30ccb168 (diff) | |
download | fpc-f85dca06373a868cb3dd886d0728f36f93d5b795.tar.gz |
* support multiple asmlabel types, renamed getlabel to
getjumplabel and added type para to getlabel for specific types
* moved lineinfo generation from assemble and aggas to dbgstabs
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@1120 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/sparc')
-rw-r--r-- | compiler/sparc/cgcpu.pas | 8 | ||||
-rw-r--r-- | compiler/sparc/ncpucnv.pas | 8 | ||||
-rw-r--r-- | compiler/sparc/ncpumat.pas | 2 | ||||
-rw-r--r-- | compiler/sparc/ncpuset.pas | 2 |
4 files changed, 10 insertions, 10 deletions
diff --git a/compiler/sparc/cgcpu.pas b/compiler/sparc/cgcpu.pas index 6b3024d6a4..593f936d66 100644 --- a/compiler/sparc/cgcpu.pas +++ b/compiler/sparc/cgcpu.pas @@ -930,7 +930,7 @@ implementation var hl : tasmlabel; begin - objectlibrary.getlabel(hl); + objectlibrary.getjumplabel(hl); a_load_const_reg(list,size,1,reg); a_jmp_flags(list,f,hl); a_load_const_reg(list,size,0,reg); @@ -955,7 +955,7 @@ implementation begin if not(cs_check_overflow in aktlocalswitches) then exit; - objectlibrary.getlabel(hl); + objectlibrary.getjumplabel(hl); case ovloc.loc of LOC_VOID: begin @@ -1140,7 +1140,7 @@ implementation a_load_const_reg(list,OS_INT,count,countreg); { explicitely allocate R_O0 since it can be used safely here } { (for holding date that's being copied) } - objectlibrary.getlabel(lab); + objectlibrary.getjumplabel(lab); a_label(list, lab); list.concat(taicpu.op_ref_reg(A_LD,src,tmpreg1)); list.concat(taicpu.op_reg_ref(A_ST,tmpreg1,dst)); @@ -1228,7 +1228,7 @@ implementation a_load_const_reg(list,OS_INT,len,countreg); { explicitely allocate R_O0 since it can be used safely here } { (for holding date that's being copied) } - objectlibrary.getlabel(lab); + objectlibrary.getjumplabel(lab); a_label(list, lab); list.concat(taicpu.op_ref_reg(A_LDUB,src,tmpreg1)); list.concat(taicpu.op_reg_ref(A_STB,tmpreg1,dst)); diff --git a/compiler/sparc/ncpucnv.pas b/compiler/sparc/ncpucnv.pas index 2151bf34ed..26df287315 100644 --- a/compiler/sparc/ncpucnv.pas +++ b/compiler/sparc/ncpucnv.pas @@ -147,7 +147,7 @@ implementation else begin objectlibrary.getdatalabel(l1); - objectlibrary.getlabel(l2); + objectlibrary.getjumplabel(l2); reference_reset_symbol(href,l1,0); hregister:=cg.getintregister(exprasmlist,OS_32); cg.a_load_loc_reg(exprasmlist,OS_32,left.location,hregister); @@ -228,8 +228,8 @@ implementation begin oldtruelabel:=truelabel; oldfalselabel:=falselabel; - objectlibrary.getlabel(truelabel); - objectlibrary.getlabel(falselabel); + objectlibrary.getjumplabel(truelabel); + objectlibrary.getjumplabel(falselabel); secondpass(left); if codegenerror then exit; @@ -279,7 +279,7 @@ implementation LOC_JUMP : begin hreg1:=cg.getintregister(exprasmlist,OS_INT); - objectlibrary.getlabel(hlabel); + objectlibrary.getjumplabel(hlabel); cg.a_label(exprasmlist,truelabel); cg.a_load_const_reg(exprasmlist,OS_INT,1,hreg1); cg.a_jmp_always(exprasmlist,hlabel); diff --git a/compiler/sparc/ncpumat.pas b/compiler/sparc/ncpumat.pas index eaa33dac08..34879d9790 100644 --- a/compiler/sparc/ncpumat.pas +++ b/compiler/sparc/ncpumat.pas @@ -139,7 +139,7 @@ implementation if (nodetype = modn) then begin - objectlibrary.getlabel(overflowlabel); + objectlibrary.getjumplabel(overflowlabel); ai:=taicpu.op_cond_sym(A_Bxx,C_O,overflowlabel); ai.delayslot_annulled:=true; exprasmlist.concat(ai); diff --git a/compiler/sparc/ncpuset.pas b/compiler/sparc/ncpuset.pas index 808f10f1bc..6f0b955859 100644 --- a/compiler/sparc/ncpuset.pas +++ b/compiler/sparc/ncpuset.pas @@ -93,7 +93,7 @@ unit ncpuset; { case expr greater than max_ => goto elselabel } cg.a_cmp_const_reg_label(exprasmlist,opsize,jmp_gt,aint(max_),hregister,elselabel); end; - objectlibrary.getlabel(table); + objectlibrary.getjumplabel(table); indexreg:=cg.getaddressregister(exprasmlist); cg.a_op_const_reg_reg(exprasmlist,OP_SHL,OS_ADDR,2,hregister,indexreg); { create reference } |