Andes Workshop
http://forum.andestech.com/

__FP_BASE__的說明
http://forum.andestech.com/viewtopic.php?f=16&t=579
Page 1 of 1

Author:  cindy [ Wed May 16, 2012 11:49 am ]
Post subject:  __FP_BASE__的說明

主要是由 post-opt 加入的, linker則是負責填上值
__FP_BASE__是用來做 fp-as-gp optimization

例如
lwi.gp $r0, [+0]
lwi.gp $r1, [+4]
lwi.gp $r2, [+8]
lwi.gp $r3, [+12]
這樣需要 4*4 = 16 bytes

但改成
addi.gp $fp, __FP_BASE__ ; la $fp, __FP_BASE__
lwi37.fp $r0, [+0]
lwi37.fp $r1, [+4]
lwi37.fp $r2, [+8]
lwi37.fp $r3, [+12]
則只要 4 + 2*4 = 12 bytes

一般來說, la $fp, __FP_BASE__這道會在要做這個 optimization的function prologue

Page 1 of 1 All times are UTC + 8 hours [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/