[LLVMdev] Doubt over lib call generation

Sachin.Punyani at microchip.com Sachin.Punyani at microchip.com
Sun Jan 11 19:23:03 PST 2009


Hi,

 

The lib call (generated through LLVM framework) for 64 bit operation
returns 64 bit value. But only the lower 32 bits are consumed. Even the
users of higher part are consuming the lower 32 bit value only. 

 

Consider the case in Sparc or ARM

 

long long lla, llb;

int ia;

 

void fun() {

  lla = llb << ia;

}

 

For such targets in the DAG after LegalizeTypes the higher 32 bits are
ignored. Why are these higher 32 bits ignored? 

 

This is happening for all the lib calls returning integer value of non
legal type.

 

Regards

Sachin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090111/b3b69285/attachment.html>


More information about the llvm-dev mailing list