Displaying 4 results from an estimated 4 matches for "error_mark_node".
2007 Nov 07
7
[LLVMdev] RFC: llvm-convert.cpp Patch
...ble():
/* On some machines, it is good to increase alignment sometimes. */
if (! DECL_USER_ALIGN (decl))
{
#ifdef DATA_ALIGNMENT
align = DATA_ALIGNMENT (TREE_TYPE (decl), align);
#endif
#ifdef CONSTANT_ALIGNMENT
=> if (DECL_INITIAL (decl) != 0 && DECL_INITIAL (decl) != error_mark_node)
align = CONSTANT_ALIGNMENT (DECL_INITIAL (decl), align);
#endif
}
By setting the DECL_USER_ALIGN field, we can get the correct alignment.
Comments?
-bw
Index: gimplify.c
===================================================================
--- gimplify.c (revision 43658)
+++ gimplif...
2007 Nov 07
0
[LLVMdev] RFC: llvm-convert.cpp Patch
...to increase alignment sometimes. */
> if (! DECL_USER_ALIGN (decl))
> {
> #ifdef DATA_ALIGNMENT
> align = DATA_ALIGNMENT (TREE_TYPE (decl), align);
> #endif
> #ifdef CONSTANT_ALIGNMENT
> => if (DECL_INITIAL (decl) != 0 && DECL_INITIAL (decl) !=
> error_mark_node)
> align = CONSTANT_ALIGNMENT (DECL_INITIAL (decl), align);
> #endif
> }
Not sure I'm getting it, is this Bar itself or the constructed C.0
that's getting realigned?
> By setting the DECL_USER_ALIGN field, we can get the correct
> alignment.
>
> Commen...
2007 Nov 07
0
[LLVMdev] RFC: llvm-convert.cpp Patch
...od to increase alignment sometimes. */
> if (! DECL_USER_ALIGN (decl))
> {
> #ifdef DATA_ALIGNMENT
> align = DATA_ALIGNMENT (TREE_TYPE (decl), align);
> #endif
> #ifdef CONSTANT_ALIGNMENT
> => if (DECL_INITIAL (decl) != 0 && DECL_INITIAL (decl) !=
> error_mark_node)
> align = CONSTANT_ALIGNMENT (DECL_INITIAL (decl), align);
> #endif
> }
>
> By setting the DECL_USER_ALIGN field, we can get the correct
> alignment.
I don't get it Bill. llvm should be making memcpy with the right
alignment regardless of how Bar is formed. C...
2007 Nov 07
3
[LLVMdev] RFC: llvm-convert.cpp Patch
...s. */
>> if (! DECL_USER_ALIGN (decl))
>> {
>> #ifdef DATA_ALIGNMENT
>> align = DATA_ALIGNMENT (TREE_TYPE (decl), align);
>> #endif
>> #ifdef CONSTANT_ALIGNMENT
>> => if (DECL_INITIAL (decl) != 0 && DECL_INITIAL (decl) !=
>> error_mark_node)
>> align = CONSTANT_ALIGNMENT (DECL_INITIAL (decl), align);
>> #endif
>> }
>
> Not sure I'm getting it, is this Bar itself or the constructed C.0
> that's getting realigned?
>
It's C.0 that's getting realigned.
-bw