- Minor change to dump of ivar layout map.

- Temporarily undef'ed __OBJC2__ in nonfragile objc abi mode
  as it was forcing ivar synthesis in a certain project which clang
  does not yet support.

llvm-svn: 67766
This commit is contained in:
Fariborz Jahanian 2009-03-26 19:10:36 +00:00
parent 904f14663d
commit dac14a7159
2 changed files with 8 additions and 1 deletions

View File

@ -2918,7 +2918,10 @@ llvm::Constant *CGObjCCommonMac::BuildIvarLayout(
printf("\nweak ivar layout: ");
const unsigned char *s = (unsigned char*)BitMap.c_str();
for (unsigned i = 0; i < BitMap.size(); i++)
printf("0x%x ", s[i]);
if (!(s[i] & 0xf0))
printf("0x0%x%s", s[i], s[i] != 0 ? ", " : "");
else
printf("0x%x%s", s[i], s[i] != 0 ? ", " : "");
printf("\n");
return getConstantGEP(Entry, 0, 0);

View File

@ -497,8 +497,12 @@ static void InitializePredefinedMacros(Preprocessor &PP,
if (PP.getLangOptions().ObjC1) {
DefineBuiltinMacro(Buf, "__OBJC__=1");
#if 0
// FIXME. This flag controls declaration of ivars which is
// needed since we do not support synthesize ivars yet.
if (PP.getLangOptions().ObjCNonFragileABI)
DefineBuiltinMacro(Buf, "__OBJC2__=1");
#endif
if (PP.getLangOptions().getGCMode() == LangOptions::NonGC) {
DefineBuiltinMacro(Buf, "__weak=");