[llvm-commits] [llvm-gcc-4.2] r46293 - /llvm-gcc-4.2/trunk/gcc/objc/objc-act.c
Dale Johannesen
dalej at apple.com
Wed Jan 23 16:34:13 PST 2008
Author: johannes
Date: Wed Jan 23 18:34:12 2008
New Revision: 46293
URL: http://llvm.org/viewvc/llvm-project?rev=46293&view=rev
Log:
Make sure initializers for OBJC_PROTOCOLs don't
get lost at -O0.
Modified:
llvm-gcc-4.2/trunk/gcc/objc/objc-act.c
Modified: llvm-gcc-4.2/trunk/gcc/objc/objc-act.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/objc/objc-act.c?rev=46293&r1=46292&r2=46293&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/objc/objc-act.c (original)
+++ llvm-gcc-4.2/trunk/gcc/objc/objc-act.c Wed Jan 23 18:34:12 2008
@@ -9342,8 +9342,11 @@
/* Force 4 byte alignment for protocols */
DECL_ALIGN(decl) = 32;
DECL_USER_ALIGN(decl) = 1;
- /* LLVM LOCAL end */
finish_var_decl (decl, initlist);
+ /* At -O0, we may have emitted references to the decl earlier. */
+ if (!optimize)
+ reset_initializer_llvm(decl);
+ /* LLVM LOCAL end */
}
}
@@ -13638,6 +13641,11 @@
proto_name = synth_id_with_class_suffix ("_OBJC_PROTOCOL", p);
decl = start_var_decl (objc_protocol_template, proto_name);
+ /* LLVM LOCAL begin */
+ /* Force 4 byte alignment for protocols */
+ DECL_ALIGN(decl) = 32;
+ DECL_USER_ALIGN(decl) = 1;
+ /* LLVM LOCAL end */
PROTOCOL_FORWARD_DECL (p) = decl;
}
More information about the llvm-commits
mailing list