This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Help needed for Memory Disambiguation


Hello ,
                                       I am currently
involved in implementing a serial assembly optimizer
for a VLIW processor. Since at the time when we
started porting gcc for our processor, and even now,
gcc is not fully supporting VLIW processors. So we
planned to generate serial assembly from gcc, and then
the serial assembly is optimized by a serial assembly
optimizer. 
 
 
Problem:- 
1) How to know about the exact memory dependencies.
Uptil now i have assumed that any memory access
actually accesses a variable MEM. With this assumption
                      (i)   *(A0+56) = R0;
                      (ii)  R1 = *(A1);
 Here i get the information that instruction (i) is
writing to a memory location which is being read by
(ii). 
In the particular VLIW processor for which i am
writing the optimizer, we have got memory write
latency=3. 
Similarly if I don't know the exact memory location, i
am unable to exploit few other very important hardware
features. 
 
 
How can i disambiguate memory only by reading serial
assembly as input? What i know right now is that there
are two methods for Disambiguating memory. 
(1) Static method which is gernally applied on the
source language like C, Fortran etc. 
(2) Dynamic which is applied on low level language.
This method is more accurate than Static method, but
it requires some hardware support also. Data
Speculation is used to Dynamically Disambiguate memory
locations. Some people have used the profiled
information for  Data Speculation. 
 
 
How should i disambiguate memory 
(1) With Serial Assembly as input
(2) With having no hardware support for Data
Speculation(Memory Disambiguation). 
(3) With having UnLimited Compilation Time, Can i get
the exact memory dependencies through profiling(by
using simulator)?
 
 
 
Waiting anxiously for reply
 
Regards
 
Husain Ahmed

__________________________________________________
Do You Yahoo!?
HotJobs - Search Thousands of New Jobs
http://www.hotjobs.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]