[llvm-commits] [llvm-gcc-4.2] r58601 - in /llvm-gcc-4.2/trunk/gcc/testsuite: ./ bugs/powerpc/ g++.apple/ g++.dg/ gcc.apple/ gcc.dg/cpp/ gcc.target/i386/ gcc.target/powerpc/ gcc.target/x86_64/abi/ obj-c++.dg/ objc.dg/ objc.dg/special/
Bill Wendling
isanbard at gmail.com
Mon Nov 3 00:36:00 PST 2008
Author: void
Date: Mon Nov 3 02:35:57 2008
New Revision: 58601
URL: http://llvm.org/viewvc/llvm-project?rev=58601&view=rev
Log:
Sync with Apple GCC mainline.
Added:
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/asm-block-66.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-destructors.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-duplicate-err.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-this.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in-foreach-header.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in_structors.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-localisglobal.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested-block-var.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-objectassign.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-printf-attribute-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-sentinel-attribute.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-method-call.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/cp-block-byref-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/debug-inlined-section.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/eh1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/kext-weak.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/prototype.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/template.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/warn-ctors.C
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5813921.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5919583.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6187262.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6222167.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6227434.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6258941.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6286881.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6308664.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6310728.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-3.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-duplicate-err.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-in-foreach-header.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-localisglobal.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nested-block-var.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-no-block-def.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-objectassign.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-printf-attribute-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-sentinel-attribute.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.h
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/longcall-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/no-nested-deprecated-warn.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/r6292557.c
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cond-expr-warn.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-type-attribute.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-property-enumtype.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-missing-comma.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-9.mm
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6255801.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6311054.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/cond-expr-warn.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-lvalue-cast-warn.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-property-enumtype.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-newmetadata-sections.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-property-typedefprotocol.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-sendsuper_msg.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/property-missing-comma.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/unimplemented-anon-category.m
Modified:
llvm-gcc-4.2/trunk/gcc/testsuite/ChangeLog.apple
llvm-gcc-4.2/trunk/gcc/testsuite/bugs/powerpc/gcc.xfail
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-5992047.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcglobal.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcivar.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcstrongcast.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgcivar.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-attributes-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-block-property-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-3.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-4.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-5.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-6.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-7.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-8.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref-attribute.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-codegen-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-complicated-type.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-continuation.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copy-destroy.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copyconstructor.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-dup-invoke_impl.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-enum.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-do.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-goto.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-nested-while.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-switch.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-while.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-return-type.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-global-byref-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-literal.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-local-stack.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-3.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nullblockisa.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgc.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgcivar.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-reference-in-method.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-parameter.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-warn.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-recovercpp.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/lookup-1.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-2.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-3.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext4.C
llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext7.C
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4104248.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4113078.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4115609.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4167459.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4182984.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4603883.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5b.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5d.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-13.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-17.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-18.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-24.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-25.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-31.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-32.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-33.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-35.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-36.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-41.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-45.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-50.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-54.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-55.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-57.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-6.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-7.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-test-nofralloc.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-5992047.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-6116917.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcglobal.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcivar.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcstrongcast.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgcivar.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-attributes-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-block-property-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-3.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-4.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-5.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-6.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-7.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-8.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-attribute.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-codegen-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-complicated-type.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-copy-destroy.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-dup-invoke_impl.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-enum.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-error-global-byref.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-do.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-goto.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-nested-while.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-switch.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-while.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-explicit-return-type.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-literal.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-stack.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-static-test.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-3.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nullblockisa.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgc.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgcivar.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-parameter.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-warn.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/const-cfstring-3.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-x86_32-sse3.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/dynamic-no-pic-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-att-stub-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-bitmask1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-deep-branch-predict-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-regparmandstackparm-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-ssetype-6.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-unaligned-movaps.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/opt-size-2.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.dg/cpp/_Pragma3.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/4891561.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/reload-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/stack-prot-kernel.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/powerpc/darwin-bool-1.c
llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/x86_64/abi/test_struct_returning.c
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-4.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-cfstring-4.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-10.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-11.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-12.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-13.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-9.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/debug-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs-warn-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/layout-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-11.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-2.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-3.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-4.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fpret-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-2.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-4.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-8.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-2.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-weak-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-stret-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-visibility-hidden-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-1.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-2.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-4.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-5.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-9.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-neg-3.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/sync-objc-exception.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-7.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/template-4.mm
llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/try-catch-20.mm
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-3.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-5.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-cfstring-4.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-10.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-11.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-12.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-13.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-6.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs-warn-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/encode-7a.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/image-info.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/layout-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/method-4.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/next-runtime-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-dir-dispatch.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-2.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-3.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-4.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-2.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-2.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-7.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-2.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-weak-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-visibility-hidden-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-alignment-test-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-2.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-4.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-5.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-9.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/selector-3.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/special/unclaimed-category-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/stret-2.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/symtab-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/sync-objc-exception.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-15.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-17.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/volatile-1.m
llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/zero-link-2.m
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/ChangeLog.apple
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/ChangeLog.apple?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/ChangeLog.apple (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/ChangeLog.apple Mon Nov 3 02:35:57 2008
@@ -1,3 +1,629 @@
+2008-10-31 Stuart Hastings <stuart at apple.com>
+
+ Radar 5813291
+ * gcc.apple/5813291.c: New.
+
+2008-10-31 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6175959
+ * gcc.apple/block-5992047.c: Modified
+ * gcc.apple/block-objectassign.c: Add
+ * g++.apple/block-objectassign.C: Add
+ * g++.apple/block-5992047.C: Modified
+
+2008-10-28 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6329245
+ * gcc.apple/block-nullblockisa.c: Modified
+ * gcc.apple/block-blocks-test-8.c: Modified
+ * gcc.apple/block-6116917.c: Modified
+ * g++.apple/block-nullblockisa.C: Modified
+ * g++.apple/block-blocks-test-8.C: Modified
+ * g++.apple/blocks-recovercpp.C: Modified
+
+2008-10-28 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6261630
+ * obj-c++.dg/method-type-attribute.mm: Add
+
+2008-10-27 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6231433
+ * objc.dg/cond-expr-warn.m: Add
+ * obj-c++.dg/cond-expr-warn.mm: Add
+
+2008-10-27 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6302949
+ * objc.dg/property-missing-comma.m: Add
+ * obj-c++.dg/property-missing-comma.mm: Add
+
+2008-10-24 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6305545
+ * g++.apple/block-in_structors.C: Add
+
+2008-10-24 Stuart Hastings <stuart at apple.com>
+
+ Radar 308664 6310728 6311054 6311100
+ * gcc.apple/6310728.c: New.
+ * gcc.apple/6308664.c: New.
+ * objc.dg/6311054.m: New.
+
+2008-10-24 Josh Conner <jconner at apple.com>
+
+ Radar 6305331
+ * gcc.apple/longcall-2.c: New test.
+
+2008-10-22 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6310599
+ * gcc.apple/block-duplicate-err.c: Add
+ * g++.apple/block-duplicate-err.C: Add
+
+2008-10-21 Stuart Hastings <stuart at apple.com>
+
+ Radar 6187262
+ * gcc.apple/6187262.c: New.
+
+2008-10-21 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 4746503
+ * gcc.apple/no-nested-deprecated-warn.c: Add
+
+2008-10-20 Stuart Hastings <stuart at apple.com>
+
+ Radar 6222167
+ * gcc.apple/6222167.c: New.
+
+2008-10-20 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6255595
+ * objc.dg/objc2-newmetadata-sections.m: New
+
+2008-10-17 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6289031
+ * gcc.apple/block-escape-do.c: Modified
+ * gcc.apple/block-escape-goto.c: Modified
+ * gcc.apple/block-escape-return.c: Modified
+ * gcc.apple/block-escape-while.c: Modified
+ * gcc.apple/block-noescape-helper.c: Modified
+ * gcc.apple/block-escape-for.c: Modified
+ * gcc.apple/block-escape-for1.c: Modified
+ * gcc.apple/block-noescape-helper-1.c: Modified
+ * gcc.apple/block-noescape-helper-2.c: Modified
+
+2008-10-15 Stuart Hastings <stuart at apple.com>
+
+ Radar 6255801
+ * objc.dg/6255801.m: New.
+
+2008-10-16 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6276695
+ * gcc.apple/block-blocks-test-4.c: Modified
+ * gcc.apple/block-byref.c: Modified
+ * gcc.apple/block-noescape-helper-3.c: Modified
+ * gcc.apple/block-error-global-byref.c: Modified
+ * gcc.apple/block-block-property-2.c: Modified
+ * gcc.apple/block-blocks-test-5.c: Modified
+ * gcc.apple/block-escape-do.c: Modified
+ * gcc.apple/block-escape-switch.c: Modified
+ * gcc.apple/block-enum.c: Modified
+ * gcc.apple/block-assignweakgc-1.c: Modified
+ * gcc.apple/block-assigngcstrongcast.c: Modified
+ * gcc.apple/block-unused-parameter.c: Modified
+ * gcc.apple/block-blocks-test-6.c: Modified
+ * gcc.apple/block-escape-goto.c: Modified
+ * gcc.apple/block-escape-return.c: Modified
+ * gcc.apple/block-global-byref.c: Modified
+ * gcc.apple/block-byref-attribute.c: Modified
+ * gcc.apple/block-unused-warn.c: Modified
+ * gcc.apple/block-blocks-test-7.c: Modified
+ * gcc.apple/block-readweakgc.c: Modified
+ * gcc.apple/block-blocks-test-8.c: Modified
+ * gcc.apple/block-escape-while.c: Modified
+ * gcc.apple/block-codegen-1.c: Modified
+ * gcc.apple/block-assignweakgc.c: Modified
+ * gcc.apple/block-readweakgcivar.c: Modified
+ * gcc.apple/block-blocks-test-1.c: Modified
+ * gcc.apple/block-noescape-helper.c: Modified
+ * gcc.apple/block-escape-for.c: Modified
+ * gcc.apple/block-escape-nested-while.c: Modified
+ * gcc.apple/block-escape-for1.c: Modifie.c: Modified
+ * gcc.apple/block-blocks-test-2.c: Modified
+ * gcc.apple/block-noescape-helper-1.c: Modified
+ * gcc.apple/block-assigngcglobal.c: Modified
+ * gcc.apple/block-copy-destroy.c: Modified
+ * gcc.apple/block-global-byref-1.c: Modified
+ * gcc.apple/block-assigngcivar.c: Modified
+ * gcc.apple/block-blocks-test-3.c: Modified
+ * gcc.apple/block-escape-return1.c: Modified
+ * gcc.apple/block-noescape-helper-2.c: Modified
+ * gcc.apple/block-assignweakgcivar.c: Modified
+ * gcc.apple/block-dup-invoke_impl.c: Modified
+ * gcc.apple/block-global-byref-2.c: Modified
+ * g++.apple/block-byref.C: Modified
+ * g++.apple/block-noescape-helper-3.C: Modified
+ * g++.apple/block-block-property-2.C: Modified
+ * g++.apple/block-blocks-test-5.C: Modified
+ * g++.apple/block-escape-do.C: Modified
+ * g++.apple/block-escape-switch.C: Modified
+ * g++.apple/block-enum.C: Modified
+ * g++.apple/block-assignweakgc-1.C: Modified
+ * g++.apple/block-assigngcstrongcast.C: Modified
+ * g++.apple/block-unused-parameter.C: Modified
+ * g++.apple/block-blocks-test-6.C: Modified
+ * g++.apple/block-escape-goto.C: Modified
+ * g++.apple/block-escape-return.C: Modified
+ * g++.apple/block-unused-warn.C: Modified
+ * g++.apple/block-byref-attribute.C: Modified
+ * g++.apple/block-nested.C: Modified
+ * g++.apple/block-blocks-test-7.C: Modified
+ * g++.apple/block-readweakgc.C: Modified
+ * g++.apple/block-blocks-test-8.C: Modified
+ * g++.apple/block-escape-while.C: Modified
+ * g++.apple/block-codegen-1.C: Modified
+ * g++.apple/block-assignweakgc.C: Modified
+ * g++.apple/block-readweakgcivar.C: Modified
+ * g++.apple/block-blocks-test-1.C: Modified
+ * g++.apple/block-noescape-helper.C: Modified
+ * g++.apple/block-escape-for.C: Modified
+ * g++.apple/block-escape-nested-while.C: Modified
+ * g++.apple/block-escape-for1.C: Modified
+ * g++.apple/block-blocks-test-2.C: Modified
+ * g++.apple/block-noescape-helper-1.C: Modified
+ * g++.apple/block-assigngcglobal.C: Modified
+ * g++.apple/block-copy-destroy.C: Modified
+ * g++.apple/block-assigngcivar.C: Modified
+ * g++.apple/block-blocks-test-3.C: Modified
+ * g++.apple/block-escape-return1.C: Modified
+ * g++.apple/block-noescape-helper-2.C: Modified
+ * g++.apple/block-assignweakgcivar.C: Modified
+ * g++.apple/block-dup-invoke_impl.C: Modified
+ * g++.apple/block-global-byref-2.C: Modified
+ * g++.apple/block-blocks-test-4.C: Modified
+2008-10-16 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6017984
+ * objc.dg/unimplemented-anon-category.m: Add
+
+2008-10-15 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6285794
+ * objc.dg/symtab-1-64bit.m: Modified
+
+2008-10-15 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6271728
+ * obj-c++.dg/syntax-error-7.mm: Modified
+ * obj-c++.dg/syntax-error-9.mm: Add
+
+2008-10-14 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6275956
+ * g++.apple/block-explicit-this.C: Add
+
+2008-10-14 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6286881
+ * gcc.apple/6286881.c: New
+
+2008-10-13 Devang Patel <dpatel at apple.com>
+
+ Radar 6184418
+ * gcc.apple/block-nested.c: Undo previous fix.
+ * gcc.apple/block-byref-block.c: Undo previous fix.
+ * gcc.apple/block-6116917.c: Undo previous fix.
+ * gcc.apple/align-test-5c.c: Undo previous fix.
+ * g++.apple/block-byref-block.c: Undo previous fix.
+ * objc-c++.dg/objc-gc-5.mm: Undo previous fix.
+ * objc.dg/objc-gc-3.m: Undo previous fix.
+
+2008-10-13 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6255913
+ * objc.dg/objc2-protocol-1.m: Modifed
+ * objc.dg/objc2-protocol-9.m: Modifed
+ * objc.dg/objc2-protocol-2.m: Modifed
+ * objc.dg/objc2-protocol-4.m: Modifed
+ * objc.dg/objc2-protocol-5.m: Modifed
+ * obj-c++.dg/objc2-protocol-9.mm: Modifed
+ * obj-c++.dg/objc2-protocol-4.mm: Modifed
+ * obj-c++.dg/objc2-protocol-5.mm: Modifed
+ * obj-c++.dg/objc2-protocol-1.mm: Modifed
+ * obj-c++.dg/objc2-protocol-2.mm: Modifed
+
+2008-10-10 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 5847213 - New block ABI
+
+ * gcc.apple/block-nullblockisa.c: Modified
+ * gcc.apple/block-blocks-test-8.c: Modified
+ * gcc.apple/block-6116917.c: Modified
+ * gcc.apple/block-nested-block-var.c: Modified
+ * g++.apple/block-nullblockisa.C: Modified
+ * g++.apple/block-blocks-test-8.C: Modified
+ * g++.apple/blocks-recovercpp.C: Modified
+ * g++.apple/block-nested-block-var.C: Modified
+
+2008-10-10 Stuart Hastings <stuart at apple.com>
+
+ Radar 6227434
+ * gcc.apple/6227434.c: New.
+
+2008-10-10 Caroline Tice <ctice at apple.com>a
+
+ Radar 6275985
+ * obj-c++.dg/dwarf-1.mm : Modify to expect function name
+ to be in __debug_str section.
+ * gcc.apple/debug-inlined-section.c: New testcase.
+ * gcc.apple/debug-inlined-section.h: New testcase.
+ * g++.apple/debug-inlined-section.C: New testcase.
+
+2008-10-09 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6269491
+ * objc.dg/objc-gc-lvalue-cast-warn.m: Add
+ * objc.dg/objc-gc-7.m: Modified
+ * objc.dg/objc-gc-weak-1.m: Modified
+ * objc.dg/objc-gc-1.m: Modified
+ * objc.dg/objc-gc-2.m: Modified
+ * obj-c++.dg/objc-gc-2.mm: Modified
+ * obj-c++.dg/objc-gc-weak-1.mm: Modified
+ * obj-c++.dg/objc-gc-8.mm: Modified
+ * obj-c++.dg/objc-gc-1.mm: Modified
+
+
+2008-10-09 Devang Patel <dpatel at apple.com>
+
+ Radar 6184418
+ * gcc.target/powerpc/darwin-bool-1.c: Require ilp32.
+ * gcc.target/i386/4891561.c: Require ilp32.
+ * gcc.target/i386/stack-prot-kernel.c: Require ilp32.
+ * gcc.target/i386/reload-1.c: Require ilp32.
+ * gcc.apple/asm-block-18.c: Require ilp32.
+ * gcc.apple/align-test-5d.c: Require ilp32.
+ * gcc.apple/block-byref-block.c: Require ilp32.
+ * gcc.apple/4525731-2.c: Require ilp32.
+ * gcc.apple/asm-block-6.c: Require ilp32.
+ * gcc.apple/i386-ssetype-6.c: Require ilp32.
+ * gcc.apple/asm-block-36.c: Require ilp32.
+ * gcc.apple/asm-block-45.c: Require ilp32.
+ * gcc.apple/4182984.c: Require ilp32.
+ * gcc.apple/bswap-1.c: Require ilp32.
+ * gcc.apple/asm-block-7.c: Require ilp32.
+ * gcc.apple/asm-block-54.c: Require ilp32.
+ * gcc.apple/4603883.c: Require ilp32.
+ * gcc.apple/default-x86_32-sse3.c: Require ilp32.
+ * gcc.apple/i386-att-stub-1.c: Require ilp32.
+ * gcc.apple/asm-block-13.c: Require ilp32.
+ * gcc.apple/asm-block-55.c: Require ilp32.
+ * gcc.apple/i386-bitmask1.c: Require ilp32.
+ * gcc.apple/block-nested.c: Require ilp32.
+ * gcc.apple/asm-block-31.c: Require ilp32.
+ * gcc.apple/i386-regparmandstackparm-1.c: Require ilp32.
+ * gcc.apple/block-blocks-test-8.c: Require ilp32.
+ * gcc.apple/asm-block-32.c: Require ilp32.
+ * gcc.apple/asm-block-57.c: Require ilp32.
+ * gcc.apple/asm-block-41.c: Require ilp32.
+ * gcc.apple/asm-block-24.c: Require ilp32.
+ * gcc.apple/i386-unaligned-movaps.c: Require ilp32.
+ * gcc.apple/i386-deep-branch-predict-1.c: Require ilp32.
+ * gcc.apple/asm-block-50.c: Require ilp32.
+ * gcc.apple/asm-block-33.c: Require ilp32.
+ * gcc.apple/default-cpu-1.c: Require ilp32.
+ * gcc.apple/opt-size-2.c: Require ilp32.
+ * gcc.apple/align-test-5b.c: Require ilp32.
+ * gcc.apple/4104248.c: Require ilp32.
+ * gcc.apple/asm-block-25.c: Require ilp32.
+ * gcc.apple/4167459.c: Require ilp32.
+ * gcc.apple/const-cfstring-3.c: Require ilp32.
+ * gcc.apple/4115609.c: Require ilp32.
+ * gcc.apple/asm-block-17.c: Require ilp32.
+ * gcc.apple/default-cpu-2.c: Require ilp32.
+ * gcc.apple/align-test-5c.c: Require ilp32.
+ * gcc.apple/4113078.c: Require ilp32.
+ * gcc.apple/4525731-1.c: Require ilp32.
+ * gcc.apple/dynamic-no-pic-1.c: Require ilp32.
+ * gcc.apple/asm-test-nofralloc.c: Require ilp32.
+ * gcc.apple/block-6116917.c: Require ilp32.
+ * gcc.apple/asm-block-35.c: Require ilp32.
+ * g++.dg/kext4.C: Require ilp32.
+ * g++.dg/apple-longcall-2.C: Require ilp32.
+ * g++.dg/kext7.C: Require ilp32.
+ * g++.dg/apple-longcall-3.C: Require ilp32.
+ * objc.dg/objc-fast-4.m: Require ilp32.
+ * objc.dg/objc-dir-dispatch.m: Require ilp32.
+ * objc.dg/objc-fpret-2.m: Require ilp32.
+ * objc.dg/objc-gc-3.m: Require ilp32.
+ * objc.dg/const-str-10.m: Require ilp32.
+ * objc.dg/try-catch-17.m: Require ilp32.
+ * objc.dg/objc2-alignment-test-1.m: Require ilp32.
+ * objc.dg/const-str-11.m: Require ilp32.
+ * objc.dg/objc-visibility-hidden-1.m: Require ilp32.
+ * objc.dg/selector-3.m: Require ilp32.
+ * objc.dg/objc-gc-section-1.m: Require ilp32.
+ * objc.dg/const-str-12.m: Require ilp32.
+ * objc.dg/symtab-1.m: Require ilp32.
+ * objc.dg/objc-gc-section-2.m: Require ilp32.
+ * objc.dg/volatile-1.m: Require ilp32.
+ * objc.dg/const-str-13.m: Require ilp32.
+ * objc.dg/stubify-2.m: Require ilp32.
+ * objc.dg/special/unclaimed-category-1.m: Require ilp32.
+ * objc.dg/encode-7a.m: Require ilp32.
+ * objc.dg/layout-1.m: Require ilp32.
+ * objc.dg/bitfield-3.m: Require ilp32.
+ * objc.dg/defs-warn-1.m: Require ilp32.
+ * objc.dg/objc-fast-1.m: Require ilp32.
+ * objc.dg/stret-2.m: Require ilp32.
+ * objc.dg/zero-link-2.m: Require ilp32.
+ * objc.dg/objc-fast-2.m: Require ilp32.
+ * objc.dg/method-4.m: Require ilp32.
+ * objc.dg/sync-objc-exception.m: Require ilp32.
+ * objc.dg/next-runtime-1.m: Require ilp32.
+ * objc.dg/image-info.m: Require ilp32.
+ * objc.dg/bitfield-5.m: Require ilp32.
+ * objc.dg/objc-fast-3.m: Require ilp32.
+ * objc.dg/try-catch-15.m: Require ilp32.
+ * objc.dg/objc-fpret-1.m: Require ilp32.
+ * objc.dg/const-str-6.m: Require ilp32.
+ * objc.dg/objc-gc-2.m: Require ilp32.
+ * objc.dg/const-cfstring-4.m: Require ilp32.
+ * objc.dg/defs.m: Require ilp32.
+ * obj-c++.dg/template-4.m: Require ilp32.
+ * obj-c++.dg/defs.m: Require ilp32.
+ * obj-c++.dg/const-str-12.m: Require ilp32.
+ * obj-c++.dg/cxx-ivars-3.m: Require ilp32.
+ * obj-c++.dg/const-cfstring-4.mm: Require ilp32.
+ * obj-c++.dg/objc-fast-2.mm: Require ilp32.
+ * obj-c++.dg/layout-1.mm: Require ilp32.
+ * obj-c++.dg/const-str-13.mm: Require ilp32.
+ * obj-c++.dg/try-catch-20.mm: Require ilp32.
+ * obj-c++.dg/bitfield-1.mm: Require ilp32.
+ * obj-c++.dg/objc-fast-3.mm: Require ilp32.
+ * obj-c++.dg/debug-1.mm: Require ilp32.
+ * obj-c++.dg/const-str-9.mm: Require ilp32.
+ * obj-c++.dg/objc-fpret-1.mm: Require ilp32.
+ * obj-c++.dg/method-11.mm: Require ilp32.
+ * obj-c++.dg/objc-gc-4.mm: Require ilp32.
+ * obj-c++.dg/objc-gc-section-1.mm: Require ilp32.
+ * obj-c++.dg/objc-fast-4.mm: Require ilp32.
+ * obj-c++.dg/objc-gc-5.mm: Require ilp32.
+ * obj-c++.dg/const-str-10.mm: Require ilp32.
+ * obj-c++.dg/objc-gc-section-2.mm: Require ilp32.
+ * obj-c++.dg/objc-visibility-hidden-1.mm: Require ilp32.
+ * obj-c++.dg/objc-stret-1.mm: Require ilp32.
+ * obj-c++.dg/defs-warn-1.mm: Require ilp32.
+ * obj-c++.dg/const-str-11.mm: Require ilp32.
+ * obj-c++.dg/bitfield-4.mm: Require ilp32.
+ * obj-c++.dg/sync-objc-exception.mm: Require ilp32.
+ * obj-c++.dg/objc-fast-1.mm: Require ilp32.
+ * g++.apple/block-blocks-test-8.C: Require ilp32.
+ * g++.apple/block-byref-block.C: Require ilp32.
+
+2008-10-07 Stuart Hastings <stuart at apple.com>
+
+ Radar 6258941
+ * gcc.apple/6258941.c: New.
+
+2008-10-06 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6268817
+ * gcc.apple/block-in-foreach-header.c: Add
+ * g++.apple/block-in-foreach-header.C: Add
+
+2008-10-03 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6267049
+ * objc.dg/objc2-property-typedefprotocol.m: Add
+
+2008-10-03 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6264448
+ * objc.dg/objc-property-enumtype.m: Add
+ * obj-c++.dg/objc-property-enumtype.mm: Add
+
+2008-10-02 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6230656
+
+ * gcc.apple/block-no-block-def.c: Add
+
+2008-10-02 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6246527
+ * gcc.apple/block-printf-attribute-1.c: Add
+ * gcc.apple/block-sentinel-attribute.c: Add
+ * g++.apple/block-sentinel-attribute.C: Add
+ * g++.apple/block-printf-attribute-1.C: Add
+
+2008-10-02 Stuart Hastings <stuart at apple.com>
+
+ Radar 5919583
+ * gcc.apple/5919583.c: New.
+
+2008-10-01 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6252174
+ * objc.dg/objc2-sendsuper_msg.m: Add
+
+2008-10-01 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6255671
+ * gcc.apple/block-block-property-2.c: Add
+ * g++.apple/block-block-property-2.C: Add
+
+2008-09-30 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6230297
+ * g++.apple/block-localisglobal.C: New
+ * gcc.apple/block-localisglobal.c: New
+ * gcc.apple/block-complicated-type.c: Modified
+ * gcc.apple/block-explicit-return-type.c: Modified
+ * gcc.apple/block-local-stack.c: Modified
+ * gcc.apple/block-literal.c: Modified
+ * g++.apple/block-continuation.C: Modified
+ * g++.apple/block-explicit-return-type.C: Modified
+ * g++.apple/block-literal.C: Modified
+ * g++.apple/block-local-stack.C: Modified
+ * g++.apple/block-complicated-type.C: Modified
+ * gcc.apple/block-attributes-1.c: Modified
+ * g++.apple/block-attributes-1.C: Modified
+
+
+2008-09-30 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6225809
+ * gcc.apple/block-nested-block-var.c: Add
+ * g++.apple/block-nested-block-var.C: Add
+
+2008-09-30 Stuart Hastings <stuart at apple.com>
+
+ Radar 5919583
+ Revert 2008-09-26 patch.
+
+2008-09-30 Caroline Tice <ctice at apple.com>
+
+ Radars 6237086 & 6237616
+ g++.apple/cp-block-byref-2.C: Make minor fix to testcase.
+
+2008-09-30 Caroline Tice <ctice at apple.com>
+
+ Radars 6237086 & 6237616
+ gcc.apple/block-byref-2.c: New testcase.
+ g++.apple/cp-block-byref-2.C: New testcase
+
+2008-09-29 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6154598
+ * g++.apple/blocks-method-call.C: Add
+
+2008-09-26 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6243400
+ * g++.apple/block-destructors.C: New
+
+2008-09-28 Caroline Tice <ctice at apple.com>
+
+ Radar 6163705
+ * gcc.apple/block-byref-3.c: Fix to work properly with -m64.
+
+2008-09-26 Stuart Hastings <stuart at apple.com>
+
+ Radar 5919583
+ * gcc.apple/5919583.c: New.
+
+2008-09-26 Caroline Tice <ctice at apple.com>
+
+ Radar 6163705
+ * gcc.apple/block-byref-3.c: New testcase.
+
+2008-09-25 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6246965
+ * gcc.apple/block-call.c : Added more tests.
+
+2008-09-25 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6244520
+ * gcc.apple/block-nullblockisa.c: Add
+ * gcc.apple/block-blocks-test-8.c: Modified
+ * g++.apple/block-nullblockisa.C: Add
+
+2008-09-25 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6237713
+ * gcc.apple/block-attributes-1.c: New
+ * g++.apple/block-attributes-1.C: New
+
+2008-09-24 Stuart Hastings <stuart at apple.com>
+
+ Radar 6025404
+ * gcc.apple/6025404.c: New.
+
+2008-09-24 Stuart Hastings <stuart at apple.com>
+
+ Radar 6119849
+ * gcc.apple/6119849.c: Added return.
+
+2008-09-23 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6196572
+ * gcc.apple/block-call.c: Modified
+
+2008-09-23 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6230701
+ * gcc.apple/block-no-trampoline.c: New
+ * gcc.apple/block-implicit-byref.c: Modified
+ * g++.apple/block-no-trampoline.C: New
+
+2008-09-22 Stuart Hastings <stuart at apple.com>
+
+ Radar 6185789
+ * g++.apple/6185789.C: New.
+
+2008-09-22 Josh Conner <jconner at apple.com>
+
+ Radar 6204451
+ * objc.dg/6204451.m: New test.
+
+2008-09-19 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6230800
+ * obj-c++.dg/objc2-none-fragile-ivar-use.mm: Modified
+ * objc.dg/objc2-none-fragile-ivar-use.m: Modified
+
+2008-09-19 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 4900615
+ * objc.dg/encode-ld.m: Add
+
+2008-09-19 Fariborz Jahanian <fjahanian at apple.com>
+
+ Radar 6173152
+ * objc.dg/enhanced-proto-4.m: Modified
+ * objc.dg/newproperty-type-conv-1.m: Modified
+ * objc.dg/property-synthesize-ivar-1.m: Modified
+ * objc.dg/property-synthesize-ivar-9.m: Add
+ * objc.dg/newproperty-syntax-1.m: Modified
+ * objc.dg/newproperty-weak-attribute-3.m: Modified
+ * objc.dg/property-synthesize-ivar-2.m: Modified
+ * objc.dg/property-synthesize-ivar-3.m: Modified
+ * objc.dg/property-synthesize-ivar-4.m: Modified
+ * objc.dg/property-synthesize-ivar-32-5.m: Add
+ * objc.dg/property-synthesize-ivar-5.m: Modified
+ * objc.dg/property-synthesize-ivar-6.m: Add
+ * objc.dg/newproperty-nowarn-compound-exp.m: Modified
+ * objc.dg/newproperty-neg-ivar-check-1.m: Modified
+ * objc.dg/synthesized-unknown-ivar-warn.m: Modified
+ * objc.dg/property-synthesize-ivar-7.m: Modified
+ * obj-c++.dg/newproperty-type-conv-1.mm: Modified
+ * obj-c++.dg/property-synthesize-ivar-5.mm: Add
+ * obj-c++.dg/property-synthesize-ivar-32-5.mm: Add
+ * obj-c++.dg/newproperty-syntax-1.mm: Modified
+ * obj-c++.dg/property-synthesize-ivar-6.mm: Add
+ * obj-c++.dg/property-synthesize-ivar-1.mm: Modified
+ * obj-c++.dg/newproperty-weak-attribute-3.mm: Modified
+ * obj-c++.dg/property-synthesize-ivar-7.mm: Modified
+ * obj-c++.dg/enhanced-proto-4.mm: Modified
+ * obj-c++.dg/newproperty-nowarn-compound-exp.mm: Modified
+ * obj-c++.dg/property-synthesize-ivar-2.mm: Modified
+ * obj-c++.dg/newproperty-neg-ivar-check-1.mm: Modified
+ * obj-c++.dg/property-synthesize-ivar-8.mm: Add
+ * obj-c++.dg/property-synthesize-ivar-3.mm: Modified
+ * obj-c++.dg/property-synthesize-ivar-10.mm: Add
+ * obj-c++.dg/property-synthesize-ivar-9.mm: Add
+ * objc.dg/property-synthesize-ivar-8.m: Add
+ * obj-c++.dg/property-synthesize-ivar-4.mm: Modified
+
+2008-09-19 Stuart Hastings <stuart at apple.com>
+
+ Radar 6119849
+ * gcc.apple/6119849.c: New.
+
2008-09-16 Fariborz Jahanian <fjahanian at apple.com>
Radar 6214617
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/bugs/powerpc/gcc.xfail
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/bugs/powerpc/gcc.xfail?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/bugs/powerpc/gcc.xfail (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/bugs/powerpc/gcc.xfail Mon Nov 3 02:35:57 2008
@@ -12,6 +12,24 @@
###------------------------------------------------------------------
5066141: gcc.dg/pr30643.c scan-assembler-not undefined
5951276: gcc.target/i386/20020616-1.c execution test
+# temporary failures due to new linker messages
+6312070: gcc.dg/compat/scalar-by-value-1 c_compat_x_tst.o-c_compat_y_tst.o link
+6312070: gcc.dg/compat/scalar-by-value-3 c_compat_x_tst.o-c_compat_y_tst.o link
+6312070: gcc.dg/darwin-ld-1.c (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -O0 (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -O1 (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -O2 (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -O3 -fomit-frame-pointer (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -O3 -g (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -Os (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-float80-timode.c -fast (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -O0 (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -O1 (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -O2 (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -O3 -fomit-frame-pointer (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -O3 -g (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -Os (test for excess errors)
+6312070: gcc.dg/torture/fp-int-convert-timode.c -fast (test for excess errors)
#
# ppc only
3906375: gcc.dg/debug/debug-1.c -gstabs -fast scan-assembler xyzzy
@@ -27,6 +45,40 @@
4875164: gcc.dg/vect/section-anchors-vect-69.c (test for excess errors)
4875164: gcc.dg/vect/section-anchors-vect-69.c scan-tree-dump-times Alignment of access forced using peeling 4
4875176: gcc.target/powerpc/stabs-attrib-vect-darwin.c scan-assembler .stabs.*vi:\\(0,[0-9]+\\)=@V
+6186620: gcc.dg/builtins-18.c (test for excess errors)
+6186620: gcc.dg/builtins-20.c (test for excess errors)
+6186620: gcc.dg/builtins-55.c (test for excess errors)
+6186620: gcc.dg/darwin-minversion-2.c (test for excess errors)
+6186620: gcc.dg/darwin64-abi.c (test for excess errors)
+6186620: gcc.dg/single-precision-constant.c (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -O0 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -O1 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -O2 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -O3 -fomit-frame-pointer (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -O3 -g (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -Os (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-1.c -fast (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -O0 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -O1 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -O2 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -O3 -fomit-frame-pointer (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -O3 -g (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -Os (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-2.c -fast (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -O0 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -O1 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -O2 (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -O3 -fomit-frame-pointer (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -O3 -g (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -Os (test for excess errors)
+6186620: gcc.dg/torture/builtin-convert-3.c -fast (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -O0 (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -O1 (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -O2 (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -O3 -fomit-frame-pointer (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -O3 -g (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -Os (test for excess errors)
+6186620: gcc.dg/torture/builtin-power-1.c -fast (test for excess errors)
#
# x86 only
4874504: gcc.dg/tree-ssa/gen-vect-11b.c scan-tree-dump-times vectorized 0 loops 1
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/asm-block-66.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/asm-block-66.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/asm-block-66.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/asm-block-66.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,8 @@
+/* APPLE LOCAL file CW asm blocks 6276214 */
+/* { dg-do compile { target i?86*-*-darwin* } } */
+/* { dg-options { -fasm-blocks } } */
+/* Radar 6276214 */
+
+void foo () {
+ asm test esi, 24 ; 11000b
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-5992047.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-5992047.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-5992047.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-5992047.C Mon Nov 3 02:35:57 2008
@@ -1,11 +1,11 @@
-/* APPLE LOCAL file radar 5992047 */
+/* APPLE LOCAL file radar 5992047 - radar 6175959 */
/* Check that with a previous declaration of _Block_destroy, test case
compiles with no error or ICE. */
/* { dg-options "-fblocks" } */
/* { dg-do compile { target *-*-darwin* } } */
#define Block_destroy(xxx) _Block_destroy((const void *)(xxx))
-void _Block_destroy(const void *aBlock);
+void _Block_destroy(const void *aBlock, int);
typedef struct dispatch_item_s *dispatch_item_t;
typedef void (^completion_block_t)(void);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcglobal.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-assigngcglobal.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcglobal.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcglobal.C Mon Nov 3 02:35:57 2008
@@ -31,7 +31,7 @@
int main(char *argc, char *argv[]) {
- __byref int i = 0;
+ __block int i = 0;
// assigning a Block into a global should elicit a global write-barrier under GC
GlobalVoidVoid = ^ { ++i; };
return GlobalInt - 1;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcivar.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-assigngcivar.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcivar.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcivar.C Mon Nov 3 02:35:57 2008
@@ -48,7 +48,7 @@
int main(char *argc, char *argv[]) {
- __byref int i = 0;
+ __block int i = 0;
TestObject *to = [[TestObject alloc] init];
// assigning a Block into an ivar should elicit a write-barrier under GC
to->ivarBlock = ^ { ++i; }; // fails to gen write-barrier
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcstrongcast.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-assigngcstrongcast.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcstrongcast.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assigngcstrongcast.C Mon Nov 3 02:35:57 2008
@@ -38,7 +38,7 @@
int main(char *argc, char *argv[]) {
StructWithBlock_t *swbp = (StructWithBlock_t *)malloc(sizeof(StructWithBlock_t*));
- __byref int i = 10;
+ __block int i = 10;
// assigning a Block into an struct slot should elicit a write-barrier under GC
swbp->ivarBlock = ^ { ++i; };
return GlobalInt - 1;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-assignweakgc-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc-1.C Mon Nov 3 02:35:57 2008
@@ -28,7 +28,7 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- __byref int i = 0;
+ __block int i = 0;
void (^local)(void);
Henry = ^ { ++i; return &i; };
if (GlobalInt == 1) {
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-assignweakgc.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgc.C Mon Nov 3 02:35:57 2008
@@ -28,7 +28,7 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- __byref int i = 0;
+ __block int i = 0;
void (^local)(void);
Henry = ^ { ++i; };
if (GlobalInt == 1) {
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgcivar.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-assignweakgcivar.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgcivar.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-assignweakgcivar.C Mon Nov 3 02:35:57 2008
@@ -36,7 +36,7 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- __byref int i = 0;
+ __block int i = 0;
void (^local)(void);
Foo *foo = [[Foo alloc] init];
foo->ivar = ^ { ++i; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-attributes-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-attributes-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-attributes-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-attributes-1.C Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 6237713 */
+/* APPLE LOCAL file radar 6237713 - modified for radar 6230297 */
/* Test for using attributes on blocks. */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
/* { dg-do compile } */
@@ -11,10 +11,10 @@
{
void (^a)(void) __attribute__((noreturn)) = ^ (void) __attribute__((noreturn)) { exit (0); }; // OK;
- ^ (int i) __attribute__((noreturn)) { return i; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
+ int (^b)(int) __attribute__((noreturn)) = ^ (int i) __attribute__((noreturn)) { return i; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
/* { dg-warning "\\'noreturn\\' function does return" "" { target *-*-* } 14 } */
- ^ __attribute__((noreturn)) { return 100; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
+ int (^c)(void) __attribute__((noreturn)) = ^ __attribute__((noreturn)) { return 100; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
/* { dg-warning "\\'noreturn\\' function does return" "" { target *-*-* } 17 } */
a = ^ (void) __attribute__((noreturn)) { exit (0); }; // OK
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-block-property-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-block-property-2.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-block-property-2.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-block-property-2.C Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 5831920 */
+/* APPLE LOCAL file radar 5831920 - Modified for radar 6255671 */
#import <Foundation/Foundation.h>
/* Test a property with block type. */
/* { dg-do run } */
@@ -15,8 +15,8 @@
int (^getIntRetain)(void);
}
- at property int (^getIntCopy)(void);
- at property int (^getIntRetain)(void);
+ at property (assign) int (^getIntCopy)(void);
+ at property (assign) int (^getIntRetain)(void);
@end
@implementation TestObject
@@ -34,7 +34,7 @@
int main(char *argc, char *argv[]) {
int count;
- __byref int val = 0;
+ __block int val = 0;
TestObject *to = [[TestObject alloc] init];
to.getIntRetain = ^ { printf("\n Hello(%d)\n", val); return ++val; };
to.getIntCopy = to.getIntRetain;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-1.C Mon Nov 3 02:35:57 2008
@@ -2,14 +2,14 @@
/* { dg-options "-fblocks" } */
/* { dg-do compile } */
-__byref int X; /* { dg-warning "__byref attribute is only allowed on local variables - ignored" } */
+__block int X; /* { dg-warning "__block attribute is only allowed on local variables - ignored" } */
-int foo(__byref int param) { /* { dg-warning "byref attribute can be specified on variables only - ignored" } */
- __byref int OK = 1;
+int foo(__block int param) { /* { dg-warning "__block attribute can be specified on variables only - ignored" } */
+ __block int OK = 1;
- extern __byref double extern_var; /* { dg-warning "__byref attribute is only allowed on local variables - ignored" } */
+ extern __block double extern_var; /* { dg-warning "__block attribute is only allowed on local variables - ignored" } */
if (X) {
- static __byref char * pch; /* { dg-warning "__byref attribute is only allowed on local variables - ignored" } */
+ static __block char * pch; /* { dg-warning "__block attribute is only allowed on local variables - ignored" } */
}
return OK - 1;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-2.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-2.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-2.C Mon Nov 3 02:35:57 2008
@@ -6,8 +6,8 @@
#include <stdio.h>
int main() {
- __byref int X = 1234;
- __byref const char * message = "HELLO";
+ __block int X = 1234;
+ __block const char * message = "HELLO";
X = X - 1234;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-3.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-3.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-3.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-3.C Mon Nov 3 02:35:57 2008
@@ -6,8 +6,8 @@
#include <stdio.h>
int main() {
- __byref int X = 1234;
- __byref const char * message = "HELLO\n";
+ __block int X = 1234;
+ __block const char * message = "HELLO\n";
X = X - 1234;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-4.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-4.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-4.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-4.C Mon Nov 3 02:35:57 2008
@@ -10,7 +10,7 @@
};
int main() {
- __byref int X = 1234;
+ __block int X = 1234;
int (^CP)(void) = ^{ X = X+1; return X; };
CP();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-5.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-5.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-5.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-5.C Mon Nov 3 02:35:57 2008
@@ -17,8 +17,8 @@
int main() {
int x = 1;
- __byref int y = 2;
- __byref int br_x;
+ __block int y = 2;
+ __block int br_x;
int y1;
double res = test(^(int z){ y = x+z; return (double)x; });
printf("result = %f x = %d y = %d\n", res, x, y);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-6.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-6.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-6.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-6.C Mon Nov 3 02:35:57 2008
@@ -16,8 +16,8 @@
}
int main() {
- __byref int x = 1;
- __byref int y = 2;
+ __block int x = 1;
+ __block int y = 2;
double res = test(^(int z){ y = x+z; return (double)x; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 1 || y != 43)
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-7.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-7.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-7.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-7.C Mon Nov 3 02:35:57 2008
@@ -12,27 +12,27 @@
int i;
int foo() {
- __byref id FFFFFF;
- __byref id Q;
+ __block id FFFFFF;
+ __block id Q;
^{ FFFFFF = 0; };
if (i)
{
- __byref id FFFFFF;
- __byref id Q;
+ __block id FFFFFF;
+ __block id Q;
^{ FFFFFF = 0; };
}
}
int main() {
- __byref id X;
- __byref id X1;
+ __block id X;
+ __block id X1;
^{ X = 0; };
if (i)
{
- __byref id X;
- __byref id X1;
+ __block id X;
+ __block id X1;
^{ X = 0; };
}
return 0;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-8.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-blocks-test-8.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-8.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-blocks-test-8.C Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Test the __byreg runtime features. */
/* { dg-options "-mmacosx-version-min=10.5 -ObjC++ -framework Foundation" { target i?86-*-darwin* } } */
/* { dg-do run { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
#import <Foundation/Foundation.h>
@@ -48,17 +48,28 @@
BLOCK_IS_GC = (1 << 27),
};
+/* APPLE LOCAL begin radar 5847213 - radar 6329245 */
struct Block_basic {
- void *isa;
- int Block_flags; // int32_t
- int Block_size; // XXX should be packed into Block_flags
+ void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
+ int Block_flags;
+ int reserved;
void (*Block_invoke)(void *);
- void (*Block_copy)(void *dst, void *src);
- void (*Block_dispose)(void *);
- //long params[0]; // generic space for const & byref hidden params, return value, variable on needs of course
+
+ struct Block_descriptor_1 {
+ unsigned long int reserved; // NULL
+ unsigned long int Block_size; // sizeof(struct Block_literal_1)
+
+ // optional helper functions
+ void (*Block_copy)(void *dst, void *src);
+ void (*Block_dispose)(void *src);
+ } *descriptor;
+
+ // imported variables
};
+/* APPLE LOCAL end radar 5847213 - radar 6329245 */
+
struct Block_byref {
- //long reserved;
+ void* isa;
struct Block_byref *forwarding;
int flags;//refcount;
int size;
@@ -89,7 +100,7 @@
}
int main(int argc, char *argv[]) {
- id __byref dumbo = newDumbObject(); //[DumbObject new];
+ id __block dumbo = newDumbObject(); //[DumbObject new];
void (^dummy)(void) = ^{
[dumbo self];
};
@@ -101,8 +112,8 @@
}
char result[200];
- printf("calling out to copy support helper at %p\n", aBlock->Block_copy);
- (*aBlock->Block_copy)(result, aBlock); // do fixup
+ printf("calling out to copy support helper at %p\n", aBlock->descriptor->Block_copy);
+ (*aBlock->descriptor->Block_copy)(result, aBlock); // do fixup
// The copy/destroy helper should have had a callout to _Block_byref_assign_copy for its byref block
if (! ByrefAssignCopy) {
@@ -116,7 +127,7 @@
return 1;
}
- (*aBlock->Block_dispose)(aBlock);
+ (*aBlock->descriptor->Block_dispose)(aBlock);
return 0;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref-attribute.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-byref-attribute.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref-attribute.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref-attribute.C Mon Nov 3 02:35:57 2008
@@ -1,11 +1,11 @@
/* APPLE LOCAL file radar 6096219 */
-/* Test that __byref attribute can be used directly. */
+/* Test that __block attribute can be used directly. */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
/* { dg-do compile } */
int main()
{
- __byref int JJJJ;
+ __block int JJJJ;
__attribute__((__blocks__(byref))) int III;
int (^XXX)(void) = ^{ return III+JJJJ; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-byref.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-byref.C Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fblocks" } */
int main() {
- __byref int x, y;
+ __block int x, y;
^{ };
^{ int r; return x+y+r; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-codegen-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-codegen-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-codegen-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-codegen-1.C Mon Nov 3 02:35:57 2008
@@ -18,8 +18,8 @@
}
int main() {
- __byref int x = 1;
- __byref int y = 2;
+ __block int x = 1;
+ __block int y = 2;
double res = test(^(int z){ y = x+z; return (double)x; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 1 || y != 43)
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-complicated-type.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-complicated-type.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-complicated-type.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-complicated-type.C Mon Nov 3 02:35:57 2008
@@ -15,6 +15,8 @@
int (^(^block)(double x))(char, short);
void foo() {
- block = ^(double x){ return ^(char c, short y) { return (int)c + y; };}; /* { dg-error "returning block that lives on the local stack" } */
+ int one = 1;
+ /* APPLE LOCAL radar 6230297 */
+ block = ^(double x){ return ^(char c, short y) { return one + (int)c + y; };}; /* { dg-error "returning block that lives on the local stack" } */
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-continuation.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-continuation.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-continuation.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-continuation.C Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 5732232 - blocks */
+/* APPLE LOCAL file radar 5732232 - radar 6230297 - blocks */
/* Modified for radar 6169527 */
/* { dg-do compile } */
/* { dg-options "-fblocks" } */
@@ -6,12 +6,13 @@
void takeblock (void (^)());
int main() {
+ int one = 1;
while (1) {
takeblock(^{
break; /* { dg-error "break statement not within loop or switch" } */
- while (1) break;/* ok */
+ while (one) break;/* ok */
goto label1; /* { dg-error "goto not allowed in block literal" } */
- /* { dg-error "label" "" { target *-*-* } 13 } */
+ /* { dg-error "label" "" { target *-*-* } 14 } */
}); /* { dg-error "enters" } */
label1: /* { dg-error "jump to label" } */
break; /* OK */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copy-destroy.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-copy-destroy.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copy-destroy.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copy-destroy.C Mon Nov 3 02:35:57 2008
@@ -12,7 +12,7 @@
@implementation Root
- (void)example {
- __byref int y, x;
+ __block int y, x;
NSAutoreleasePool *pool = [NSAutoreleasePool new];
NSAutoreleasePool *relpool = [NSAutoreleasePool new];
bar(^(int z){ y = x+z; [pool drain]; if (y) y++; [relpool release]; return y+2.0; });
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copyconstructor.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-copyconstructor.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copyconstructor.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-copyconstructor.C Mon Nov 3 02:35:57 2008
@@ -3,6 +3,7 @@
support code. */
/* { dg-do run } */
/* { dg-options "-mmacosx-version-min=10.6 " { target *-*-darwin* } } */
+/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
#import <Block.h>
#include <stdio.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-debug-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-1.C Mon Nov 3 02:35:57 2008
@@ -4,7 +4,8 @@
/* { dg-do compile } */
/* { dg-options "-g -O0 -fblocks -dA" } */
-/* { dg-final { scan-assembler "invoke_impl.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_descriptor.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_literal_generic.*DW_AT_name" } } */
struct inStruct {
void (^genericBlockPtr)();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-debug-2.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-2.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-debug-2.C Mon Nov 3 02:35:57 2008
@@ -4,7 +4,8 @@
/* { dg-do compile } */
/* { dg-options "-g -O0 -fblocks -dA" } */
-/* { dg-final { scan-assembler "invoke_impl.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_descriptor.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_literal_generic.*DW_AT_name" } } */
void (^os)();
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-destructors.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-destructors.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-destructors.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-destructors.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,74 @@
+/* APPLE LOCAL file radar 6243400 */
+/* { dg-options "-fblocks" } */
+/* { dg-do run } */
+
+#include <stdio.h>
+extern "C" void abort(void);
+int constructors = 0;
+int destructors = 0;
+
+class TestObject
+{
+public:
+ TestObject(const TestObject& inObj);
+ TestObject();
+ ~TestObject();
+
+ TestObject& operator=(const TestObject& inObj);
+
+ int version() const { return _version; }
+private:
+ mutable int _version;
+};
+
+TestObject::TestObject(const TestObject& inObj)
+
+{
+ ++constructors;
+ _version = inObj._version;
+ printf("%p (%d) -- TestObject(const TestObject&) called\n", this, _version);
+}
+
+
+TestObject::TestObject()
+{
+ _version = ++constructors;
+ printf("%p (%d) -- TestObject() called\n", this, _version);
+}
+
+
+TestObject::~TestObject()
+{
+ printf("%p -- ~TestObject() called\n", this);
+ ++destructors;
+}
+
+
+TestObject& TestObject::operator=(const TestObject& inObj)
+{
+ printf("%p -- operator= called\n", this);
+ _version = inObj._version;
+ return *this;
+}
+
+void testRoutine() {
+ TestObject one;
+
+ void (^b)(void) = ^{ printf("my const copy of one is %d\n", one.version()); };
+}
+
+
+
+int main(char *argc, char *argv[]) {
+ testRoutine();
+ if (constructors == 0) {
+ printf("No copy constructors!!!\n");
+ abort();
+ }
+ if (constructors != destructors) {
+ printf("%d constructors but only %d destructors\n", constructors, destructors);
+ abort();
+ }
+ printf("%s:success\n", argv[0]);
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-dup-invoke_impl.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-dup-invoke_impl.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-dup-invoke_impl.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-dup-invoke_impl.C Mon Nov 3 02:35:57 2008
@@ -23,8 +23,8 @@
}
int main() {
- __byref enum numbers x = one;
- __byref enum numbers y = two;
+ __block enum numbers x = one;
+ __block enum numbers y = two;
myblock CL = ^(enum numbers z)
{ y = z;
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-duplicate-err.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-duplicate-err.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-duplicate-err.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-duplicate-err.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,14 @@
+/* APPLE LOCAL file radar 6310599 */
+/* Check that internal fields do not conflict with user names. */
+/* { dg-options "-fblocks" } */
+/* { dg-do compile } */
+
+int main()
+{
+ __block int flags;
+ __block void *isa;
+
+ ^{ flags=1; isa = (void *)isa; };
+ return 0;
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-enum.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-enum.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-enum.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-enum.C Mon Nov 3 02:35:57 2008
@@ -23,8 +23,8 @@
}
int main() {
- __byref enum numbers x = one;
- __byref enum numbers y = two;
+ __block enum numbers x = one;
+ __block enum numbers y = two;
enum numbers res = test(^(enum numbers z){ y = z; return x; });
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-do.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-do.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-do.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-do.C Mon Nov 3 02:35:57 2008
@@ -14,12 +14,12 @@
int main() {
{
- __byref int O1;
+ __block int O1;
int p = 0;
do {
- __byref int I1;
+ __block int I1;
do {
- __byref int J1;
+ __block int J1;
if (p == 2)
break;
} while ( ++p < 3);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-for.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for.C Mon Nov 3 02:35:57 2008
@@ -12,11 +12,11 @@
int main() {
{
- __byref int O1;
+ __block int O1;
int i;
for (i = 1; i <= 5; i++)
{
- __byref int I1;
+ __block int I1;
}
if (count != 5)
abort();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-for1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-for1.C Mon Nov 3 02:35:57 2008
@@ -15,14 +15,14 @@
int main() {
{
- __byref int O1;
+ __block int O1;
int i;
int p;
for (i = 1; i <= 5; i++) {
- __byref int I1;
+ __block int I1;
p = 0;
while (p != 10) {
- __byref int II1;
+ __block int II1;
if (p == 2)
break;
++p;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-goto.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-goto.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-goto.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-goto.C Mon Nov 3 02:35:57 2008
@@ -4,13 +4,13 @@
int main(int p) {
p = -5;
- __byref int O1;
+ __block int O1;
int i;
LOUT: ;
for (i = 1; i < 100; i++) {
- __byref int I1;
+ __block int I1;
while (p < 0) {
- __byref int II1;
+ __block int II1;
if (p == 100)
goto LOUT;
++p;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-nested-while.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-nested-while.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-nested-while.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-nested-while.C Mon Nov 3 02:35:57 2008
@@ -16,8 +16,8 @@
void objc_get_type_qualifiers (int flag, int type) {
while (flag--)
while (type++ < 4) {
- __byref int W1;
- __byref int W2;
+ __block int W1;
+ __block int W2;
if (type == 2)
break;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-return.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return.C Mon Nov 3 02:35:57 2008
@@ -16,9 +16,9 @@
int main1() {
- __byref int X = 1234;
+ __block int X = 1234;
if (X) {
- __byref int local_BYREF = 100;
+ __block int local_BYREF = 100;
X += 100 + local_BYREF;
return count-2;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-return1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-return1.C Mon Nov 3 02:35:57 2008
@@ -17,9 +17,9 @@
void *_NSConcreteStackBlock;
void FOO(int arg) {
- __byref int X = 1234;
+ __block int X = 1234;
if (arg) {
- __byref int local_BYREF = 100;
+ __block int local_BYREF = 100;
X += 100 + local_BYREF;
return;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-switch.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-switch.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-switch.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-switch.C Mon Nov 3 02:35:57 2008
@@ -15,34 +15,34 @@
}
int foo(int p, int q) {
- __byref int O1;
+ __block int O1;
switch (p) {
case 1:
{
- __byref int I1;
+ __block int I1;
I1 += 1;
break;
}
case 10:
{
- __byref int J1;
+ __block int J1;
break;
}
default :
{
- __byref int D1;
- __byref int D2;
+ __block int D1;
+ __block int D2;
switch (q)
{
case 11:
{
- __byref int Q1;
+ __block int Q1;
break;
}
default:
{
- __byref int ID1;
- __byref int ID2;
+ __block int ID1;
+ __block int ID2;
}
};
break;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-while.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-escape-while.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-while.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-escape-while.C Mon Nov 3 02:35:57 2008
@@ -12,10 +12,10 @@
int main() {
{
- __byref int O1;
+ __block int O1;
int i = 0;
while (++i != 5) {
- __byref int I1;
+ __block int I1;
}
if (count != 4)
abort();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-return-type.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-explicit-return-type.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-return-type.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-return-type.C Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 6185344 */
+/* APPLE LOCAL file radar 6185344 - updated for radar 6230297 */
/* Test for blocks with explicit return type specified. */
/* { dg-options "-mmacosx-version-min=10.6 -ObjC++" { target *-*-darwin* } } */
/* { dg-do compile } */
@@ -75,9 +75,10 @@
int (^(^block)(double x))(char, short);
void foo() {
- block = ^(double x){ return ^int(char c, short y) { return c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
+ int one = 1;
+ block = ^(double x){ return ^int(char c, short y) { return one + c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
// or:
- block = ^(double x){ return ^(char c, short y) { return (int)c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
+ block = ^(double x){ return ^(char c, short y) { return one + (int)c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-this.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-explicit-this.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-this.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-explicit-this.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,29 @@
+/* APPLE LOCAL file radar 6275956 */
+/* Use of explicit "this" inside a block. */
+/* { dg-options "-mmacosx-version-min=10.5" { target *-*-darwin* } } */
+/* { dg-do run } */
+extern "C" void abort (void);
+
+struct S {
+
+ int ifield;
+
+ int mem ()
+ {
+ int (^p) (void) = ^ { return this->ifield; };
+ if (p() != ifield)
+ abort ();
+ return 0;
+ }
+ S (int val) { ifield = val; }
+
+};
+
+int main()
+{
+ S s(123);
+
+ return s.mem();
+}
+
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-global-byref-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-global-byref-2.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-global-byref-2.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-global-byref-2.C Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* APPLE LOCAL file radar 6014138 */
-/* Test use of __byref on locals which will be used as 'byref' variables in blocks. */
+/* Test use of __block on locals which will be used as 'byref' variables in blocks. */
/* { dg-do run } */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
@@ -14,9 +14,9 @@
int foo() {
- __byref int local_byref_1 = 10;
- __byref int local_byref_2 = 10;
- __byref int local_byref_3 = 10;
+ __block int local_byref_1 = 10;
+ __block int local_byref_2 = 10;
+ __block int local_byref_3 = 10;
CallBlock( ^ { ++local_byref_1; ++local_byref_2; ++local_byref_3;
CallBlock(^ { ++local_byref_1; ++local_byref_2; ++local_byref_3; });
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in-foreach-header.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-in-foreach-header.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in-foreach-header.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in-foreach-header.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,57 @@
+/* APPLE LOCAL file radar 6268817 */
+/* Testing use of block literal expression in ObjC's enumeration foreach-statement loop header. */
+/* { dg-options "-mmacosx-version-min=10.6 -ObjC++ -framework Foundation" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+#import <Foundation/Foundation.h>
+
+ at interface TargetSymbol : NSObject {
+ NSString * _symbolName;
+}
+ at property (copy) NSString *name;
+ at end
+
+ at implementation TargetSymbol
+ at synthesize name = _symbolName;
+ at end
+
+static void Looper(NSArray *symbols) {
+ // 1. Block literal assigned to a block pointer, which is used in loop: build succeeds
+ NSComparator comparator = ^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];};
+
+ for (id symbol in [symbols sortedArrayUsingComparator:comparator]) {
+ // Do something
+ }
+
+ // 2. Block expression literal used, but still outside loop: build succeeds
+ NSArray *sortedSymbols = [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}];
+
+ for (id symbol in sortedSymbols) {
+ // Do something
+ }
+
+ // 3. Block expression literal used directly in loop: build fails
+ for (id symbol in [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}]) {
+ // Do something
+ }
+
+ // 3. Block expression literal used directly in loop: build fails
+ for (id symbol in [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}]) {
+ // Do something
+ }
+
+ // 3. Block expression literal used directly in loop: build fails
+ for (id symbol in [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}]) {
+ // Do something
+ }
+}
+
+
+int main (int argc, const char * argv[]) {
+ NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+
+ // insert code here...
+ NSLog(@"Hello, World!");
+ [pool drain];
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in_structors.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-in_structors.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in_structors.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-in_structors.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,33 @@
+/* APPLE LOCAL file radar 6305545 */
+/* { dg-do run } */
+/* { dg-options "-mmacosx-version-min=10.5" { target *-*-darwin* } } */
+
+extern "C" void abort(void);
+
+static int count = 100;
+struct CParallelTest
+{
+ CParallelTest (void);
+ ~CParallelTest (void) {
+ void (^p1)() = ^ { count -= 3; };
+ p1();
+ }
+};
+
+CParallelTest::CParallelTest (void)
+{
+ void (^p1)() = ^ { count = 1; };
+ int (^p2)() = ^ { return ++count; };
+ int (^p3)() = ^ { return ++count; };
+ p1(); p2(); p3();
+}
+
+int main()
+{
+ {
+ CParallelTest t1;
+ }
+ if (count != 0)
+ abort();
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-literal.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-literal.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-literal.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-literal.C Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 5732232, 6034839 - blocks */
+/* APPLE LOCAL file radar 5732232, 6034839, 6230297 - blocks */
/* { dg-do compile } */
/* { dg-options "-fblocks" } */
@@ -25,7 +25,7 @@
noop = ^; /* { dg-error "expected" } */
- return ^{printf("\nBlock\n"); }; /* { dg-error "returning block that lives on the local stack" } */
+ return ^{printf("\nBlock\n"); };
}
void test2() {
@@ -36,7 +36,8 @@
}
void (^test3())(void) {
- return ^{}; /* { dg-error "returning block that lives on the local stack" } */
+ __block int i;
+ return ^{ i = 1; }; /* { dg-error "returning block that lives on the local stack" } */
}
void test4() {
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-local-stack.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-local-stack.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-local-stack.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-local-stack.C Mon Nov 3 02:35:57 2008
@@ -1,8 +1,9 @@
-/* APPLE LOCAL file radar 5732232 - blocks */
+/* APPLE LOCAL file radar 5732232 - radar 6230297 - blocks */
/* { dg-do compile } */
/* { dg-options "-fblocks" } */
void (^test3())(void) {
- return ^{}; /* { dg-error "returning block that lives on the local stack" } */
+ __block int i;
+ return ^{i = 1; }; /* { dg-error "returning block that lives on the local stack" } */
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-localisglobal.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-localisglobal.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-localisglobal.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-localisglobal.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,42 @@
+/* APPLE LOCAL file radar 6230297 */
+/* { dg-options "-mmacosx-version-min=10.6" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+/*
+ * localisglobal.c
+ * testObjects
+ *
+ * Created by Blaine Garst on 9/29/08.
+ * Copyright 2008 __MyCompanyName__. All rights reserved.
+ *
+ * works in all configurations
+ * CONFIG
+ * rdar://6230297
+ */
+
+#include <stdio.h>
+
+void (^global)(void) = ^{ printf("hello world\n"); };
+
+int aresame(void *first, void *second) {
+ long *f = (long *)first;
+ long *s = (long *)second;
+ return *f == *s;
+}
+int main(int argc, char *argv[]) {
+ int i = 10;
+ void (^local)(void) = ^ { printf("hi %d\n", i); };
+ void (^localisglobal)(void) = ^ { printf("hi\n"); };
+
+ if (aresame(local, localisglobal)) {
+ printf("local block could be global, but isn't\n");
+ return 1;
+ }
+ if (!aresame(global, localisglobal)) {
+ printf("local block is not global, not stack, what is it??\n");
+ return 1;
+ }
+ printf("%s: success\n", argv[0]);
+ return 0;
+
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested-block-var.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-nested-block-var.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested-block-var.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested-block-var.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,32 @@
+/* APPLE LOCAL file radar 6225809 - radar 5847213 */
+/* __block var used in a nested block neeb be implicitly declared in
+ each intervening block. */
+/* { dg-options "-mmacosx-version-min=10.6 " { target *-*-darwin* } } */
+/* { dg-do run } */
+
+#include <stdio.h>
+
+static void Block_copy (void (^I)(void))
+{
+ I();
+}
+
+int main(int argc, char *argv[]) {
+ __block int a = 42;
+ int save_a = a; // just to keep the address on the stack.
+
+ void (^b)(void) = ^{
+ Block_copy(^{
+ a = 2;
+ });
+ };
+
+ Block_copy(b);
+
+ if(a == save_a) {
+ printf("**** __block heap storage should have been created at this point\n");
+ return 1;
+ }
+ printf("%s: Success (old %d new %d)\n", argv[0], save_a, a);
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-nested.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nested.C Mon Nov 3 02:35:57 2008
@@ -22,12 +22,12 @@
}
int main() {
- __byref enum numbers x = one;
- __byref enum numbers y = two;
+ __block enum numbers x = one;
+ __block enum numbers y = two;
myblock CL = ^(enum numbers z)
{ enum numbers savex = x;
- { __byref enum numbers x = savex;
+ { __block enum numbers x = savex;
y = z;
if (y != three)
exit (6);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-noescape-helper-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-1.C Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file radar 6083129 byref escapes */
/* Test for generation of escape _Block_byref_release call when a local
- __byref variable is copied in. */
+ __block variable is copied in. */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -22,7 +22,7 @@
int test() {
{
- int __byref i = 10;
+ int __block i = 10;
void (^dummy)(void) = ^{ printf("i = %d\n", i); };
junk(dummy);
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-noescape-helper-2.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-2.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-2.C Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file radar 6083129 byref escapes */
/* Test for generation of escape _Block_byref_release call when a local
- __byref variable is copied in and block has a return statement. */
+ __block variable is copied in and block has a return statement. */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -22,7 +22,7 @@
int test() {
{
- int __byref i = 10;
+ int __block i = 10;
int (^dummy)(void) = ^{ printf("i = %d\n", i); return i; };
junk(dummy);
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-3.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-noescape-helper-3.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-3.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper-3.C Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* APPLE LOCAL file radar 6083129 byref escapes */
-/* Test for generation of escape _Block_byref_release call when a __byref
+/* Test for generation of escape _Block_byref_release call when a __block
variable inside a block is declared and used. */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -22,7 +22,7 @@
int test() {
{
- void (^dummy)(void) = ^{ int __byref i = 10; printf("i = %d\n", i); };
+ void (^dummy)(void) = ^{ int __block i = 10; printf("i = %d\n", i); };
junk(dummy);
}
return count;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-noescape-helper.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-noescape-helper.C Mon Nov 3 02:35:57 2008
@@ -20,7 +20,7 @@
int test() {
{
- __byref int i = 10;
+ __block int i = 10;
void (^dummy)(void) = ^{ ++i; };
junk(dummy);
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nullblockisa.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-nullblockisa.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nullblockisa.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-nullblockisa.C Mon Nov 3 02:35:57 2008
@@ -5,13 +5,9 @@
#include <stdio.h>
#include <stdlib.h>
-#define HASISA 1
-
void check(void *ptr) {
struct inner {
-#if HASISA
void* isa; // should be zero
-#endif
long forwarding;
int flags;
int size;
@@ -19,20 +15,30 @@
// long disposehelper not needed
int i; //
};
+/* APPLE LOCAL begin radar 5847213 - radar 6329245 */
struct block_with_blocki {
- long isa;
- int flags;
- int size;
- long impl;
- long copyhelper;
- long destroyhelper;
- struct inner *blocki;
+ void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
+ int Block_flags;
+ int reserved;
+ void (*Block_invoke)(void *);
+
+ struct Block_descriptor_1 {
+ unsigned long int reserved; // NULL
+ unsigned long int size; // sizeof(struct Block_literal_1)
+
+ // optional helper functions
+ void (*Block_copy)(void *dst, void *src);
+ void (*Block_dispose)(void *src);
+ } *descriptor;
+ struct inner *blocki;
} *block = (struct block_with_blocki *)ptr;
+/* APPLE LOCAL end radar 5847213 - radar 6329245 */
+
// sanity checks
- if (block->size != sizeof(struct block_with_blocki)) {
+ if (block->descriptor->size != sizeof(struct block_with_blocki)) {
// layout funny
printf("layout is funny, struct size is %d vs runtime size %ld\n",
- block->size,
+ (int)block->descriptor->size,
sizeof(struct block_with_blocki));
exit(1);
}
@@ -41,12 +47,10 @@
block->blocki->size);
exit(1);
}
-#if HASISA
if (block->blocki->isa != (void*)NULL) {
printf("not a NULL __block isa\n");
exit(1);
}
-#endif
return;
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-objectassign.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-objectassign.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-objectassign.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-objectassign.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,79 @@
+/* APPLE LOCAL file radar 6175959 */
+/* Test for generation of two new APIs; _Block_object_assign and _Block_object_dispose */
+/* { dg-options "-mmacosx-version-min=10.6 -fblocks" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+#include <stdio.h>
+
+#define BLOCK_HAS_DESCRIPTOR (1 << 29)
+#define BLOCK_HAS_COPY_DISPOSE (1 << 25)
+
+struct Block_descriptor {
+ unsigned long int reserved;
+ unsigned long int size;
+ void (*copy)(void *dst, void *src);
+ void (*dispose)(void *);
+};
+
+struct Block_layout {
+ void *isa;
+ int flags;
+ int reserved;
+ void (*invoke)(void *, ...);
+ struct Block_descriptor *descriptor;
+ // imported variables
+};
+
+int AssignCalled = 0;
+int DisposeCalled = 0;
+
+// local copy instead of libSystem.B.dylib copy
+void _Block_object_assign(void *destAddr, const void *object, const int isWeak) {
+ printf("_Block_object_assign(%p, %p, %d) called\n", destAddr, object, isWeak);
+ AssignCalled = 1;
+}
+
+void _Block_object_dispose(const void *object, const int isWeak) {
+ printf("_Block_object_dispose(%p, %d) called\n", object, isWeak);
+ DisposeCalled = 1;
+}
+
+struct MyStruct {
+ long isa;
+ long field;
+};
+
+typedef struct MyStruct *__attribute__((NSObject)) MyStruct_t;
+
+int main(int argc, char *argv[]) {
+ // create a block
+ struct MyStruct X;
+ MyStruct_t xp = (MyStruct_t)&X;
+ xp->field = 10;
+ void (^myBlock)(void) = ^{ printf("field is %ld\n", xp->field); };
+ // should be a copy helper generated with a calls to above routines
+ // Lets find out!
+ struct Block_layout *bl = (struct Block_layout *)(void *)myBlock;
+ if ((bl->flags & BLOCK_HAS_DESCRIPTOR) != BLOCK_HAS_DESCRIPTOR) {
+ printf("using old runtime layout!\n");
+ return 1;
+ }
+ if ((bl->flags & BLOCK_HAS_COPY_DISPOSE) != BLOCK_HAS_COPY_DISPOSE) {
+ printf("no copy dispose!!!!\n");
+ return 1;
+ }
+ // call helper routines directly. These will, in turn, we hope, call the stubs above
+ long destBuffer[256];
+ printf("destbuffer is at %p, block at %p\n", destBuffer, (void *)bl);
+ bl->descriptor->copy(destBuffer, bl);
+ bl->descriptor->dispose(bl);
+ if (AssignCalled == 0) {
+ printf("did not call assign helper!\n");
+ return 1;
+ }
+ if (DisposeCalled == 0) {
+ printf("did not call dispose helper\n");
+ return 1;
+ }
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-printf-attribute-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-printf-attribute-1.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-printf-attribute-1.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-printf-attribute-1.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,15 @@
+/* APPLE LOCAL file radar 6246527 */
+/* { dg-do compile } */
+/* { dg-options "-Wformat" } */
+
+int main()
+{
+ void (^b) (int arg, const char * format, ...) __attribute__ ((__format__ (__printf__, 1, 3))) = /* { dg-error "format string argument not a string type" } */
+ ^ __attribute__ ((__format__ (__printf__, 1, 3))) (int arg, const char * format, ...) {}; /* { dg-error "format string argument not a string type" } */
+ void (^z) (int arg, const char * format, ...) __attribute__ ((__format__ (__printf__, 2, 3))) = ^ __attribute__ ((__format__ (__printf__, 2, 3))) (int arg, const char * format, ...) {};
+
+ z(1, "%s", 1); /* { dg-warning "format \\'\%s\\' expects type" } */
+ z(1, "%s", "HELLO");
+
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgc.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-readweakgc.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgc.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgc.C Mon Nov 3 02:35:57 2008
@@ -28,7 +28,7 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
void (^local)(void);
- __byref int i = 10;
+ __block int i = 10;
Henry = ^ { ++i; };
local = Henry;
if (GlobalInt2 == 1) {
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgcivar.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-readweakgcivar.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgcivar.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-readweakgcivar.C Mon Nov 3 02:35:57 2008
@@ -33,7 +33,7 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- __byref int i = 0;
+ __block int i = 0;
void (^local)(void);
Foo *foo = [[Foo alloc] init];
foo->ivar = ^ { ++i; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-reference-in-method.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-reference-in-method.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-reference-in-method.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-reference-in-method.C Mon Nov 3 02:35:57 2008
@@ -2,6 +2,7 @@
/* Test use of blocks in member functions. */
/* { dg-do run } */
/* { dg-options "-mmacosx-version-min=10.6 " { target *-*-darwin* } } */
+/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
#import <Block.h>
#include <stdio.h>
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-sentinel-attribute.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-sentinel-attribute.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-sentinel-attribute.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-sentinel-attribute.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,28 @@
+/* APPLE LOCAL file radar 6246527 */
+/* { dg-do compile } */
+/* { dg-options "-Wformat" } */
+#include <stddef.h>
+
+void (^e) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (1,1)));
+void (^e1) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (1,1, 3))); /* { dg-error "wrong number of arguments" "sentinel" } */
+
+int main()
+{
+ void (^b) (int arg, const char * format, ...) __attribute__ ((__sentinel__)) =
+ ^ __attribute__ ((__sentinel__)) (int arg, const char * format, ...) {};
+ void (^z) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (2))) = ^ __attribute__ ((__sentinel__ (2))) (int arg, const char * format, ...) {};
+
+
+ void (^y) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (5))) = ^ __attribute__ ((__sentinel__ (5))) (int arg, const char * format, ...) {};
+
+ b(1, "%s", NULL); // OK
+ b(1, "%s", 0); /* { dg-warning "missing sentinel in function call" } */
+ z(1, "%s",4 ,1,0); /* { dg-warning "missing sentinel in function call" } */
+ z(1, "%s", NULL, 1, 0); // OK
+
+ y(1, "%s", 1,2,3,4,5,6,7); /* { dg-warning "missing sentinel in function call" } */
+
+ y(1, "%s", NULL,3,4,5,6,7); // OK
+
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-parameter.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-unused-parameter.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-parameter.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-parameter.C Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
int main()
{
- __byref int i = 1;
+ __block int i = 1;
^ { i = 1; return i; };
return 0;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-warn.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/block-unused-warn.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-warn.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/block-unused-warn.C Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-Wall" } */
int main() {
- __byref int x = 10;
+ __block int x = 10;
int y = 1;
int (^myBlock)(void) = ^{ return x+y; };
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-method-call.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/blocks-method-call.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-method-call.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-method-call.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,29 @@
+/* APPLE LOCAL file radar 6154598 */
+/* Test that methods may be called from within a block
+ declared inside a member function. */
+/* { dg-options "-mmacosx-version-min=10.5" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+extern "C" void abort(void);
+struct SSSSSS
+{
+ void Index( void ) { if (_version != 2) abort(); }
+ void func(void);
+ int _version;
+ SSSSSS() { _version = 2; }
+};
+
+void SSSSSS::func(void)
+{
+ void (^X)(void) = ^(void) { Index(); };
+ X();
+}
+
+int main()
+{
+ SSSSSS s1;
+ s1.func();
+ return 0;
+}
+
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-recovercpp.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/blocks-recovercpp.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-recovercpp.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/blocks-recovercpp.C Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 6214617 */
+/* APPLE LOCAL file radar 6214617 - modified for radar 5847213 */
/* { dg-options "-mmacosx-version-min=10.5 -ObjC++" { target *-*-darwin* } } */
/* { dg-do run } */
@@ -57,16 +57,24 @@
}
void hack(void *block) {
+ /* APPLE LOCAL begin radar 6329245 */
// check flags to see if constructor/destructor is available;
struct myblock {
void *isa;
int flags;
- int refcount;
- void *invokeptr;
- void (*copyhelper)(struct myblock *dst, struct myblock *src);
- void (*disposehelper)(struct myblock *src);
+ int reserved;
+ void (*Block_invoke)(void *);
+ struct Block_descriptor_1 {
+ unsigned long int reserved; // NULL
+ unsigned long int Block_size; // sizeof(struct Block_literal_1)
+
+ // optional helper functions
+ void (*copyhelper)(void *dst, void *src);
+ void (*disposehelper)(void *src);
+ } *descriptor;
long space[32];
} myversion, *mbp = (struct myblock *)block;
+ /* APPLE LOCAL end radar 6329245 */
printf("flags -> %x\n", mbp->flags);
if (! ((1<<25) & mbp->flags)) {
printf("no copy/dispose helper functions provided!\n");
@@ -76,16 +84,16 @@
printf("no marking for ctor/dtors present!\n");
exit(1);
}
- printf("copyhelper -> %p\n", mbp->copyhelper);
+ printf("copyhelper -> %p\n", mbp->descriptor->copyhelper);
// simulate copy
- mbp->copyhelper(&myversion, mbp);
+ mbp->descriptor->copyhelper(&myversion, mbp);
if (constructors != 3) {
printf("copy helper didn't do the constructor part\n");
exit(1);
}
- printf("disposehelper -> %p\n", mbp->disposehelper);
+ printf("disposehelper -> %p\n", mbp->descriptor->disposehelper);
// simulate destroy
- mbp->disposehelper(&myversion);
+ mbp->descriptor->disposehelper(&myversion);
if (destructors != 1) {
printf("dispose helper didn't do the dispose\n");
exit(1);
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/cp-block-byref-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/cp-block-byref-2.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/cp-block-byref-2.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/cp-block-byref-2.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,34 @@
+/* APPLE LOCAL file radar 6237086 */
+/* { dg-do compile } */
+/* { dg-options "-g -O0 -dA -mmacosx-version-min=10.6" }*/
+/* { dg-final { scan-assembler "DW_OP_fbreg+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x\[0-9a-f]+\[ \t]+\[#;@]\[ \t]sleb128 -\[0-9]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x6+\[ \t]+\[#;@]\[ \t]DW_OP_deref+\[ \t\n]+\[ \t]\\.byte+\[ \t]\[0x6;0x23]+\[ \t]+\[#;@]\[ \t]\[DW_OP_deref;DW_OP_plus_uconst]" } } */
+
+#include <stdio.h>
+
+int
+main ()
+{
+ int val_1, val_2;
+
+ int (^my_block) (int);
+
+ if (1)
+ {
+ __block int use_by_ref = 1;
+ int use_by_value = 0xfefefefe;
+
+ my_block = ^ (int in_value) {
+ use_by_ref++;
+ printf ("Block function has: %d %d %d.\n", in_value, use_by_value, use_by_ref);
+ return in_value + use_by_ref + use_by_value;
+ };
+ use_by_ref++;
+ val_1 = my_block (10);
+ }
+
+ val_1 = my_block (20);
+ val_2 = my_block (30);
+ printf ("Got: %d and %d.\n", val_1, val_2);
+
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/debug-inlined-section.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/debug-inlined-section.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/debug-inlined-section.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/debug-inlined-section.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,53 @@
+/* APPLE LOCAL file, Radar 6275985 */
+/* { dg-do compile { target *-*-darwin* } } */
+/* { dg-options "-O1 -gdwarf-2 -dA" } */
+/* { dg-final { scan-assembler "__debug_inlined" } } */
+/* { dg-final { scan-assembler "\[#;@]+\[ \t]+MIPS linkage name: \"_ZNK1UcvPKcEv\"" } } */
+/* { dg-final { scan-assembler "\[#;@]+\[ \t]+Function name: \"operator const char" } } */
+/* { dg-final { scan-assembler "\[#;@]+\[ \t]+MIPS linkage name: \"operator" } } */
+
+struct S
+{
+ virtual ~S();
+ S (const char *str);
+ S& operator= (const char *str);
+ operator const char *() const;
+ S& operator+= (const char *str);
+};
+inline S operator+ (const char *s1, const S &s2)
+{
+ S x (s1);
+ x += s2;
+ return x;
+}
+struct U
+{
+ U ();
+ U& operator= (const char *);
+ const char *foo() const;
+ operator const char *() const { return foo(); }
+};
+template <class T> struct V
+{
+ T v;
+};
+template <class T> struct W
+{
+ V<T> *w;
+ W() : w (0) {}
+ const T& operator* () const { return w->v; }
+ T& operator* () { return w->v; }
+};
+struct X {
+ X();
+};
+struct Y {
+ Y (const U &u);
+};
+X::X()
+{
+ W<U> a;
+ U b;
+ b = (*a) + "xx";
+ Y c (b);
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/eh1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/eh1.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/eh1.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/eh1.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,14 @@
+/* APPLE LOCAL file EH __TEXT __gcc_except_tab 5819051 */
+/* { dg-do compile { target *-*-darwin* } } */
+/* { dg-final { scan-assembler "section __TEXT,__gcc_except_tab" } } */
+/* Radar 5819051 */
+
+#include <stdio.h>
+
+void foo() {
+ try {
+ throw 1;
+ } catch (int i) {
+ printf("Hi\n");
+ }
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/kext-weak.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/kext-weak.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/kext-weak.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/kext-weak.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,9 @@
+/* APPLE LOCAL kext weak_import 5935650 */
+/* { dg-do assemble { target i?86*-*-darwin* } } */
+/* { dg-options "-mkernel -dynamic -m64" } */
+
+extern void foo() __attribute__((weak_import));
+void test() {
+ if (foo)
+ foo();
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/lookup-1.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/lookup-1.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/lookup-1.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/lookup-1.C Mon Nov 3 02:35:57 2008
@@ -7,7 +7,7 @@
void A::foo(const char* basename) {
class B {
friend class C;
- static void WaitForSinks(C:: /* { dg-error "has not been declared" } */
- D* data); /* { dg-error "expected" } */
+ static void WaitForSinks(C:: /* { dg-error "has not been declared" } */
+ D* data); /* { dg-error "expected" } */
};
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/prototype.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/prototype.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/prototype.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/prototype.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,55 @@
+/* APPLE LOCAL file warn missing prototype 6261539 */
+/* Radar 6261539 */
+/* { dg-options "-Wmissing-prototypes" } */
+void foo() { } /* { dg-warning "no previous prototype" } */
+void foo(int i) { } /* { dg-warning "no previous prototype" } */
+void bar();
+void bar() { }
+void bar1();
+void bar1(int i);
+void bar1(int i) { }
+void bar1(float) { } /* { dg-warning "no previous prototype" } */
+extern "C" void bar1(char);
+extern "C" void bar1(char) { } /* { dg-error "previous declaration" } */
+extern "C" void bar1(short); /* { dg-error "conflicts with" } */
+extern "C" void bar1(short) { }
+extern "C" void bar2(char);
+extern "C" void bar2(char) { } /* { dg-error "previous declaration" } */
+extern "C" void bar2(short) { } /* { dg-error "conflicts with" } */
+extern "C" void bar3(char);
+extern "C" void bar3(char) { } /* { dg-error "previous declaration" } */
+extern "C" void bar3(short) { } /* { dg-error "conflicts with" } */
+struct beef { };
+void beef() { } /* { dg-warning "no previous prototype" } */
+void dead();
+namespace {
+ void dead() { }
+}
+void dead4();
+namespace A {
+ void dead4() { } /* { dg-warning "no previous prototype" } */
+}
+void dead1();
+namespace A {
+ void dead1(int);
+ void dead1() { } /* { dg-warning "no previous prototype" } */
+}
+void dead2(); /* { dg-error "old declaration" } */
+int dead2() { } /* { dg-error "new declaration" } */
+struct undef;
+undef meat; /* { dg-error "incomplete type and cannot be defined" } */
+double meat() { }
+static void local() { }
+int main() { }
+void exit(float);
+void exit(int e) { a: goto a; } /* { dg-warning "no previous prototype" } */
+void dead3(float);
+int dead3(int); /* { dg-error "old declaration" } */
+void dead3(int e) { a: goto a; }/* { dg-error "new declaration" } */
+class A {
+ void m();
+};
+void A::m() { }
+namespace {
+ void m() { }
+};
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/template.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/template.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/template.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/template.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,31 @@
+/* APPLE LOCAL file templated static data 6298605 */
+/* Radar 6298605 */
+
+namespace {
+ template<int>
+ struct ElfSizes {
+ static const int sym_size = 5;
+ static const int ehdr_size = 5;
+ };
+
+ template<int>
+ struct SizedElfFileData {
+ SizedElfFileData();
+
+ virtual void ReadSymbols();
+ };
+
+ template<int Size>
+ SizedElfFileData<Size>::SizedElfFileData() {
+ ElfSizes<Size>::ehdr_size;
+ }
+
+ template<int Size>
+ void SizedElfFileData<Size>::ReadSymbols() {
+ ElfSizes<Size>::sym_size;
+ }
+
+ void Open() {
+ SizedElfFileData<32> foo = SizedElfFileData<32>();
+ }
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/warn-ctors.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.apple/warn-ctors.C?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/warn-ctors.C (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.apple/warn-ctors.C Mon Nov 3 02:35:57 2008
@@ -0,0 +1,22 @@
+/* APPLE LOCAL file Wglobal-constructors 6324584 */
+/* { dg-options "-Wglobal-constructors" } */
+/* Radar 6324584 */
+
+volatile int i;
+
+class A {
+public:
+ A() { i = 1; }
+} a; /* { dg-warning "requires global construction" } */
+
+class B {
+public:
+ ~B() { i = 1; }
+} b; /* { dg-warning "requires global destruction" } */
+
+void ctor() __attribute__((constructor));
+void ctor() { /* { dg-warning "requires global construction" } */
+}
+void dtor() __attribute__((destructor));
+void dtor() { /* { dg-warning "requires global destruction" } */
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-2.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.dg/apple-longcall-2.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-2.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-2.C Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4299630 */
/* { dg-do compile { target powerpc*-*-darwin* } } */
-/* { dg-skip-if "Not valid on 64-bit" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-mlongcall" } */
/* { dg-final { scan-assembler "\tjmp[ ]" } } */
/* Radar 4299630: insure C++ thunks get long jmps. */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-3.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.dg/apple-longcall-3.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-3.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/apple-longcall-3.C Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4380289 */
/* { dg-do compile { target powerpc*-*-darwin* } } */
-/* { dg-skip-if "Not valid on 64-bit" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-mlongcall -mkernel" } */
/* { dg-final { scan-assembler "\tjmp" } } */
/* { dg-final { scan-assembler "\tjbsr" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext4.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.dg/kext4.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext4.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext4.C Mon Nov 3 02:35:57 2008
@@ -1,7 +1,7 @@
/* APPLE LOCAL file KEXT double destructor */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-fapple-kext" } */
-/* { dg-skip-if "Not valid on 64-bit" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* test for use of apple_kext_compatibility on stack */
struct B1 {
virtual ~B1();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext7.C
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/g%2B%2B.dg/kext7.C?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext7.C (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/g++.dg/kext7.C Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Radar 3943783 kernel extensions built with gcc-4.0 can't be loaded */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-S -fapple-kext" } */
-/* { dg-skip-if "Not valid on 64-bit" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
struct Base {
virtual ~Base();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4104248.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4104248.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4104248.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4104248.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4104248 */
/* { dg-do compile { target "i?86*-*-darwin*" } } */
-/* { dg-skip-if "" { i?86*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-Os" } */
register char foo asm("edi");
char x;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4113078.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4113078.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4113078.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4113078.c Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Check that stack alignment is correct when callee inlined function uses
a vector and caller does not. */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O2 -msse3 -march=pentium4 -march=prescott" } */
#include <xmmintrin.h>
extern void bar(__m128i*);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4115609.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4115609.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4115609.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4115609.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4115609 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O3 -mdynamic-no-pic -fomit-frame-pointer" } */
/* { dg-final { scan-assembler-times "movl\t*" 55} } */
/* { dg-final { scan-assembler-not "sall" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4167459.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4167459.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4167459.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4167459.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL begin radar 4167459 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O -march=pentium4" } */
extern double foo(double);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4182984.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4182984.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4182984.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4182984.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4182984 */
/* { dg-do run { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O3" } */
typedef unsigned int UINT;
typedef unsigned long UINT32;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-1.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4525731 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O3" } */
#include <stdlib.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4525731-2.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4525731 */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O3" } */
#include <stdlib.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4603883.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4603883.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4603883.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/4603883.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file radar 4603883 */
/* { dg-do compile } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
double param[10][10][5000000]; /* { dg-error "size of array 'param' is too large" } */
void foo ()
{
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5813921.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5813921.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5813921.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5813921.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,18 @@
+/* APPLE LOCAL file 5813921 */
+/* { dg-do compile { target powerpc-*-* i?86-*-* x86_64-*-* } } */
+/* { dg-options { -Os } } */
+/* { dg-final { scan-assembler "cntlzw" { target powerpc-*-* } } } */
+/* { dg-final { scan-assembler "bsr" { target i?86-*-* x86_64-*-* } } } */
+typedef long unsigned int __darwin_size_t;
+typedef __darwin_size_t size_t;
+typedef enum RoundingMode {
+ kRoundTowardNearestEven = 1, kRoundTowardZero = 2, kRoundTowardInf = 4,
+ kRoundTowardMinusInf = 8,
+ kRoundAll = kRoundTowardNearestEven | kRoundTowardZero | kRoundTowardInf
+ | kRoundTowardMinusInf } RoundingMode;
+extern const int roundingModes[4];
+void SetRoundingMode( RoundingMode mode ) {
+ long m = mode;
+ size_t r = (8*sizeof(long)-1) - __builtin_clzl( m );
+ fesetround( roundingModes[ r ] );
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5919583.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5919583.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5919583.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/5919583.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,41 @@
+/* APPLE LOCAL file 5919583 */
+/* { dg-do run { target i?86*-*-* } } */
+/* { dg-options { -msse3 } } */
+#include <stdio.h>
+#include <emmintrin.h>
+
+typedef union {
+ char ary[16];
+ __m128i vec;
+} vectype;
+
+vectype ref;
+
+int __attribute__ ((__noinline__)) scare (vectype);
+int __attribute__ ((__noinline__))
+scare (vectype vec)
+{
+ int i;
+ for (i=0; i<16; i++)
+ if (vec.ary[i] != ref.ary[i])
+ return -1; /* fail */
+ return 0; /* pass */
+}
+
+int main( void )
+{
+ vectype v;
+
+ ref.vec = (const __m128i) { 0x32100123456789ABULL, 0xFEDCBA987654ULL };
+ v.vec = _mm_srli_si128( (const __m128i) { 0x0123456789ABCDEFULL, 0xFEDCBA9876543210ULL }, 2 );
+ /*
+ {
+ int i;
+ for( i = 0; i < 16; i++ )
+ printf( "%2.2x", ((unsigned char*) &v)[i] );
+ }
+ printf ("scare = %d\n", scare(v));
+ */
+
+ return scare (v);
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6187262.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6187262.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6187262.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6187262.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,14 @@
+/* APPLE LOCAL file 6187262 */
+/* { dg-do compile { target { i?86-*-darwin* x86_64-*-darwin* } } } */
+/* { dg-options { -O1 } } */
+typedef long long __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
+int main()
+{
+ __m64 mm6;
+ int i;
+ for(i=0; i<1e7; ++i)
+ {
+ mm6 = (__m64)(unsigned long long)i;
+ mm6 = __builtin_ia32_pand(mm6, mm6);
+ }
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6222167.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6222167.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6222167.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6222167.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,21 @@
+/* { dg-do compile { target i?86-apple-darwin* x86_64-apple-darwin* } } */
+/* { dg-options "-msse4.1" } */
+/* { dg-final { scan-assembler "pmaxsd" } } */
+/* { dg-final { scan-assembler "pminsd" } } */
+#include <stdio.h>
+#include "smmintrin.h"
+typedef int int4 __attribute__ ((vector_size(16)));
+
+int main( void )
+{
+ volatile int4 a = (int4) { 0, 1, 2, 3};
+ volatile int4 b = (int4) { 2, 2, 2, 2};
+
+ int4 max = __builtin_ia32_pmaxsd128( a, b );
+ int4 min = __builtin_ia32_pminsd128( a, b );
+
+ printf( "max: { %d, %d %d, %d}\n", ((int*) &max)[0], ((int*) &max)[1], ((int*) &max)[2], ((int*) &max)[3] );
+ printf( "min: { %d, %d %d, %d}\n", ((int*) &min)[0], ((int*) &min)[1], ((int*) &min)[2], ((int*) &min)[3] );
+
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6227434.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6227434.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6227434.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6227434.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,12 @@
+/* APPLE LOCAL file 6227434 */
+/* { dg-do compile { target i?86-apple-darwin* x86_64-apple-darwin* } } */
+/* { dg-options { -mfix-and-continue } } */
+/* { dg-require-effective-target lp64 } */
+/* { scan-assembler-not "_count\[12\]-" } */
+static unsigned count1 = 0;
+extern unsigned count2;
+
+void t(void) {
+ count1 = 1;
+ count2 = 2;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6258941.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6258941.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6258941.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6258941.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,9 @@
+/* APPLE LOCAL file 6258941 */
+/* { dg-do compile { target powerpc*-apple-darwin* } } */
+/* { dg-options { -mtune=G4 } } */
+extern void malloc_printf(const char *format, ...);
+void auto_fatal(const char *format, ...) {
+ static char buffer[512];
+ malloc_printf("%s", buffer);
+ __builtin_trap();
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6286881.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6286881.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6286881.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6286881.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,9 @@
+/* APPLE LOCAL file radar 6286881 */
+/* Check for incorrect expression does not result in compiler looping; instead of diagnostic. */
+/* { dg-do compile } */
+unsigned int
+func_48 (signed char p_49)
+{
+ signed char l_340;
+ func_44 (&((1 ^ 1 == (lshift_u_s (1)) != (l_340 < 1)) & 1L)); /* { dg-error "lvalue required as unary" } */
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6308664.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6308664.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6308664.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6308664.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,11 @@
+/* APPLE LOCAL file 6308664 */
+/* { dg-do compile { target i?86-*-darwin* x86_64-*-darwin* } } */
+/* { dg-options { -m64 } } */
+/* { dg-final { scan-assembler-not "GOTPCREL" } } */
+extern void doit(double x);
+
+void test()
+{
+ doit(16.0);
+ doit(32.0);
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6310728.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6310728.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6310728.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/6310728.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,62 @@
+/* APPLE LOCAL file 6310728 */
+/* { dg-do compile } */
+/* { dg-options { -mfix-and-continue -m64 } } */
+typedef int int32_t;
+typedef int32_t SINT32 ;
+void RowCol8x8( SINT32 *in8x8, SINT32 *out8x8, SINT32 acqfact, SINT32 intraFlag, float *i2f9808div2, float *i2f9239div2, float *i2f7071div2, char *qAC) {
+ SINT32 k;
+ float tmpout[64];
+ SINT32 *ptrL;
+ float *ptrF;
+ SINT32 tmpL0,tmpL1,tmpL2,tmpL3,tmpL4,tmpL5,tmpL6,tmpL7,tmpL8,tmpL9;
+ float kess7071div2 = 0.3535533905932737;
+ float kess9808div2 = 0.4903926402016152;
+ float kess8315div2 = 0.4157348061512726;
+ float kess5556div2 = 0.2777851165098011;
+ float kess1951div2 = 0.09754516100806417;
+ float kess9239div2 = 0.4619397662556434;
+ float kess3827div2 = 0.1913417161825449;
+ float tmp0,tmp1,tmp2,tmp3,tmp4,tmp5,tmp6,tmp7,tmp8,tmp9;
+ for (ptrL=in8x8,ptrF=tmpout,k=0;
+ k<8;
+ k++,ptrF++,ptrL++) {
+ tmp1 = ptrF[0];
+ tmp2 = ptrF[56];
+ tmp4 = ptrF[48];
+ if (intraFlag && k == 0) {
+ tmp5 = 0.5 + tmp5*0.125;
+ }
+ tmpL1 = tmp5;
+ tmpL2 = tmp7 - kess7071div2*tmp8;
+ tmp7 = kess9239div2*tmp0;
+ tmpL4 = tmp7 + kess3827div2*tmp1;
+ tmp8 = kess3827div2*tmp0;
+ tmpL7 = tmp8 - kess9239div2*tmp1;
+ tmp5 = kess9808div2*tmp9;
+ tmp5 += kess8315div2*tmp2;
+ tmp5 += kess5556div2*tmp4;
+ tmpL3 = tmp5 + kess1951div2*tmp6;
+ tmp8 += kess8315div2*tmp4;
+ tmpL8 = tmp8 - kess9808div2*tmp6;
+ if (!(intraFlag && k == 0)) {
+ if (!( acqfact <= 7 )) {
+ ptrL[0] = (SINT32) qAC[(tmpL1)];
+ }
+ else ptrL[0] = tmpL1;
+ }
+ if (!( acqfact <= 7 )) {
+ ptrL[16] = (SINT32) qAC[(tmpL4)];
+ ptrL[24] = (SINT32) qAC[(tmpL5)];
+ ptrL[40] = (SINT32) qAC[(tmpL6)];
+ ptrL[48] = (SINT32) qAC[(tmpL7)];
+ ptrL[56] = (SINT32) qAC[(tmpL8)];
+ }
+ else {
+ ptrL[32] = tmpL2;
+ ptrL[8] = tmpL3;
+ ptrL[16] = tmpL4;
+ ptrL[48] = tmpL7;
+ ptrL[56] = tmpL8;
+ }
+ }
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5b.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5b.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5b.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5b.c Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-malign-power -DSIZE=12" } */
/* We have a different test to pick up the warning from 64-bit case. */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/*
* GCC alignment test for command line options for setting alignment modes.
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5d.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5d.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5d.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/align-test-5d.c Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-malign-natural -DSIZE=12" } */
/* This is for Intel only. */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/*
* GCC alignment test for command line options for setting alignment modes.
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-13.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-13.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-13.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-13.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4259442 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-17.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-17.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-17.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-17.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 -O2 } } */
/* Radar */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-18.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-18.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-18.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-18.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 -O2 } } */
/* Radar 4248228 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-24.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-24.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-24.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-24.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4300095 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-25.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-25.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-25.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-25.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4309942 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-31.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-31.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-31.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-31.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 -mdynamic-no-pic } } */
/* Radar 4319881 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-32.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-32.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-32.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-32.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4319887 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-33.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-33.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-33.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-33.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4300193 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-35.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-35.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-35.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-35.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 -mdynamic-no-pic } } */
/* Radar 4371551 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-36.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-36.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-36.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-36.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4371958 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-41.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-41.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-41.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-41.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4429851 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-45.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-45.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-45.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-45.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4419735 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-50.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-50.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-50.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-50.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4505741 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-54.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-54.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-54.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-54.c Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* { dg-final { scan-assembler "movq -\(16|36\)\\\(%ebp\\\), %mm0" } } */
/* Radar 4515069 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-55.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-55.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-55.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-55.c Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 -mdynamic-no-pic } } */
/* { dg-final { scan-assembler "movq _packedw1.*, %mm0" } } */
/* Radar 4515069 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-57.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-57.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-57.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-57.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do run { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { i?86*-*-darwin* } { "-m64" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { -fasm-blocks -msse3 } } */
/* Radar 4682427 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-6.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-6.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-6.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-6.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { "-fasm-blocks" } } */
/* Radar 4211978 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-7.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-7.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-7.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-block-7.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file CW asm blocks */
/* { dg-do assemble { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options { "-fasm-blocks" } } */
/* Radar 4214021 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-test-nofralloc.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-test-nofralloc.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-test-nofralloc.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/asm-test-nofralloc.c Mon Nov 3 02:35:57 2008
@@ -1,7 +1,7 @@
/* APPLE LOCAL begin radar 4187164 */
/* { dg-do run { target powerpc*-*-darwin* } } */
/* This testcase isn't 64-bit safe. */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-fasm-blocks" } */
#include <stdio.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-5992047.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-5992047.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-5992047.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-5992047.c Mon Nov 3 02:35:57 2008
@@ -1,11 +1,11 @@
-/* APPLE LOCAL file radar 5992047 */
+/* APPLE LOCAL file radar 5992047 - radar 6175959 */
/* Check that with a previous declaration of _Block_destroy, test case
compiles with no error or ICE. */
/* { dg-options "-fblocks" } */
/* { dg-do compile { target *-*-darwin* } } */
#define Block_destroy(xxx) _Block_destroy((const void *)(xxx))
-void _Block_destroy(const void *aBlock);
+void _Block_destroy(const void *aBlock, int isWeak);
typedef struct dispatch_item_s *dispatch_item_t;
typedef void (^completion_block_t)(void);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-6116917.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-6116917.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-6116917.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-6116917.c Mon Nov 3 02:35:57 2008
@@ -7,16 +7,25 @@
#include <assert.h>
//#include <Block_private.h>
+/* APPLE LOCAL begin radar 5847213 - radar 6329245 */
struct Block_basic {
- void *isa;
- int Block_flags; // int32_t
- int Block_size; // XXX should be packed into Block_flags
+ void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
+ int Block_flags;
+ int reserved;
void (*Block_invoke)(void *);
- void (*Block_copy)(void *dst, void *src);
- void (*Block_dispose)(void *);
- //long params[0]; // generic space for const & byref hidden params, return value, variable on needs of course
-};
+ struct Block_descriptor_1 {
+ unsigned long int reserved; // NULL
+ unsigned long int Block_size; // sizeof(struct Block_literal_1)
+
+ // optional helper functions
+ void (*Block_copy)(void *dst, void *src);
+ void (*Block_dispose)(void *src);
+ } *descriptor;
+
+ // imported variables
+};
+/* APPLE LOCAL end radar 5847213 - radar 6329245 */
void
func(void (^b)(void))
@@ -51,6 +60,7 @@
bb = (void *)stage1;
+ /* APPLE LOCAL radar 5847213 - radar 6329245 */
bbi_addr = (long)bb->Block_invoke;
bb_addr = (long)bb;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcglobal.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcglobal.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcglobal.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcglobal.c Mon Nov 3 02:35:57 2008
@@ -28,8 +28,8 @@
int main(char *argc, char *argv[]) {
- int i = 0;
+ __block int i = 0;
// assigning a Block into a global should elicit a global write-barrier under GC
- GlobalVoidVoid = ^ { | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ GlobalVoidVoid = ^ { ++i; };
return GlobalInt - 1;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcivar.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcivar.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcivar.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcivar.c Mon Nov 3 02:35:57 2008
@@ -45,10 +45,10 @@
int main(char *argc, char *argv[]) {
- int i = 0;
+ __block int i = 0;
TestObject *to = [[TestObject alloc] init];
// assigning a Block into an ivar should elicit a write-barrier under GC
- to->ivarBlock = ^ { | i | ++i; }; // fails to gen write-barrier /* { dg-warning "has been deprecated in blocks" } */
+ to->ivarBlock = ^ { ++i; }; // fails to gen write-barrier
//to->x = to; // gens write-barrier
return GlobalInt - 1;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcstrongcast.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcstrongcast.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcstrongcast.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assigngcstrongcast.c Mon Nov 3 02:35:57 2008
@@ -35,8 +35,8 @@
int main(char *argc, char *argv[]) {
StructWithBlock_t *swbp = (StructWithBlock_t *)malloc(sizeof(StructWithBlock_t*));
- int i = 10;
+ __block int i = 10;
// assigning a Block into an struct slot should elicit a write-barrier under GC
- swbp->ivarBlock = ^ { | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ swbp->ivarBlock = ^ { ++i; };
return GlobalInt - 1;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc-1.c Mon Nov 3 02:35:57 2008
@@ -25,9 +25,9 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- int i = 0;
+ __block int i = 0;
void (^local)(void);
- Henry = ^ { | i | ++i; return &i; }; /* { dg-warning "has been deprecated in blocks" } */
+ Henry = ^ { ++i; return &i; };
if (GlobalInt == 1) {
printf("%s: success\n", argv[0]);
exit(0);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgc.c Mon Nov 3 02:35:57 2008
@@ -25,9 +25,9 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- int i = 0;
+ __block int i = 0;
void (^local)(void);
- Henry = ^ { | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ Henry = ^ { ++i; };
if (GlobalInt == 1) {
printf("%s: success\n", argv[0]);
exit(0);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgcivar.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgcivar.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgcivar.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-assignweakgcivar.c Mon Nov 3 02:35:57 2008
@@ -33,10 +33,10 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- int i = 0;
+ __block int i = 0;
void (^local)(void);
Foo *foo = [[Foo alloc] init];
- foo->ivar = ^ { | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ foo->ivar = ^ { ++i; };
if (GlobalInt == 1) {
printf("%s: success\n", argv[0]);
exit(0);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-attributes-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-attributes-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-attributes-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-attributes-1.c Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 6237713 */
+/* APPLE LOCAL file radar 6237713 - modified for radar 6230297 */
/* Test for using attributes on blocks. */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
/* { dg-do compile } */
@@ -11,10 +11,10 @@
{
void (^a)(void) __attribute__((noreturn)) = ^ (void) __attribute__((noreturn)) { exit (0); }; // OK;
- ^ (int i) __attribute__((noreturn)) { return i; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
+ int (^b)(int) __attribute__((noreturn)) = ^ (int i) __attribute__((noreturn)) { return i; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
/* { dg-warning "\\'noreturn\\' function does return" "" { target *-*-* } 14 } */
- ^ __attribute__((noreturn)) { return 100; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
+ int (^c)(void) __attribute__((noreturn)) = ^ __attribute__((noreturn)) { return 100; }; /* { dg-warning "function declared \\'noreturn\\' has a \\'return\\' statement" } */
/* { dg-warning "\\'noreturn\\' function does return" "" { target *-*-* } 17 } */
a = ^ (void) __attribute__((noreturn)) { exit (0); }; // OK
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-block-property-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-block-property-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-block-property-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-block-property-2.c Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 5831920 */
+/* APPLE LOCAL file radar 5831920 - modified for radar 6255671 */
#import <Foundation/Foundation.h>
/* Test a property with block type. */
/* { dg-do run } */
@@ -12,8 +12,8 @@
int (^getIntRetain)(void);
}
- at property int (^getIntCopy)(void);
- at property int (^getIntRetain)(void);
+ at property (assign) int (^getIntCopy)(void);
+ at property (assign) int (^getIntRetain)(void);
@end
@implementation TestObject
@@ -31,9 +31,9 @@
int main(char *argc, char *argv[]) {
int count;
- int val = 0;
+ __block int val = 0;
TestObject *to = [[TestObject alloc] init];
- to.getIntRetain = ^ { | val| printf("\n Hello(%d)\n", val); return ++val; }; /* { dg-warning "has been deprecated in blocks" } */
+ to.getIntRetain = ^ { printf("\n Hello(%d)\n", val); return ++val; };
to.getIntCopy = to.getIntRetain;
count = DoBlock (to.getIntCopy);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-1.c Mon Nov 3 02:35:57 2008
@@ -2,14 +2,14 @@
/* { dg-options "-fblocks" } */
/* { dg-do compile } */
-__byref int X; /* { dg-warning "__byref attribute is only allowed on local variables - ignored" } */
+__block int X; /* { dg-warning "__block attribute is only allowed on local variables - ignored" } */
-int foo(__byref int param) { /* { dg-warning "byref attribute can be specified on variables only - ignored" } */
- __byref int OK = 1;
+int foo(__block int param) { /* { dg-warning "__block attribute can be specified on variables only - ignored" } */
+ __block int OK = 1;
- extern __byref double extern_var; /* { dg-warning "__byref attribute is only allowed on local variables - ignored" } */
+ extern __block double extern_var; /* { dg-warning "__block attribute is only allowed on local variables - ignored" } */
if (X) {
- static __byref char * pch; /* { dg-warning "__byref attribute is only allowed on local variables - ignored" } */
+ static __block char * pch; /* { dg-warning "__block attribute is only allowed on local variables - ignored" } */
}
return OK - 1;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-2.c Mon Nov 3 02:35:57 2008
@@ -6,8 +6,8 @@
void _Block_byref_release(void*src){}
int main() {
- __byref int X = 1234;
- __byref const char * message = "HELLO";
+ __block int X = 1234;
+ __block const char * message = "HELLO";
X = X - 1234;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-3.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-3.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-3.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-3.c Mon Nov 3 02:35:57 2008
@@ -6,8 +6,8 @@
void _Block_byref_release(void*src){}
int main() {
- __byref int X = 1234;
- __byref const char * message = "HELLO\n";
+ __block int X = 1234;
+ __block const char * message = "HELLO\n";
X = X - 1234;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-4.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-4.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-4.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-4.c Mon Nov 3 02:35:57 2008
@@ -8,9 +8,9 @@
void _Block_byref_release(void*src){}
int main() {
- __byref int X = 1234;
+ __block int X = 1234;
- int (^CP)(void) = ^{ |X| X = X+1; return X; }; /* { dg-warning "has been deprecated in blocks" } */
+ int (^CP)(void) = ^{ X = X+1; return X; };
CP();
printf ("X = %d\n", X);
return X - 1235;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-5.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-5.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-5.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-5.c Mon Nov 3 02:35:57 2008
@@ -17,10 +17,10 @@
int main() {
int x = 1;
- __byref int y = 2;
- __byref br_x;
+ __block int y = 2;
+ __block br_x;
int y1;
- double res = test(^(int z){|y| y = x+z; return (double)x; }); /* { dg-warning "has been deprecated in blocks" } */
+ double res = test(^(int z){y = x+z; return (double)x; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 1 || y != 43)
exit(1);
@@ -28,7 +28,7 @@
br_x = x;
y1 = y;
- res = test(^(int z){|br_x| br_x = br_x+z; return (double)y1; }); /* { dg-warning "has been deprecated in blocks" } */
+ res = test(^(int z){br_x = br_x+z; return (double)y1; });
printf("result = %f br_x = %d y1 = %d\n", res, br_x, y1);
if (br_x != 43 || y1 != 43)
exit(1);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-6.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-6.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-6.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-6.c Mon Nov 3 02:35:57 2008
@@ -16,14 +16,14 @@
}
int main() {
- __byref int x = 1;
- __byref int y = 2;
- double res = test(^(int z){|y| y = x+z; return (double)x; }); /* { dg-warning "has been deprecated in blocks" } */
+ __block int x = 1;
+ __block int y = 2;
+ double res = test(^(int z){y = x+z; return (double)x; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 1 || y != 43)
exit(1);
- res = test(^(int z){|x| x = x+z; return (double)y; }); /* { dg-warning "has been deprecated in blocks" } */
+ res = test(^(int z){x = x+z; return (double)y; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 43 || y != 43)
exit(1);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-7.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-7.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-7.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-7.c Mon Nov 3 02:35:57 2008
@@ -12,28 +12,28 @@
int i;
int foo() {
- __byref id FFFFFF;
- __byref id Q;
- ^{ |FFFFFF| FFFFFF = 0; }; /* { dg-warning "has been deprecated in blocks" } */
+ __block id FFFFFF;
+ __block id Q;
+ ^{ FFFFFF = 0; };
if (i)
{
- __byref id FFFFFF;
- __byref id Q;
- ^{ |FFFFFF| FFFFFF = 0; }; /* { dg-warning "has been deprecated in blocks" } */
+ __block id FFFFFF;
+ __block id Q;
+ ^{ FFFFFF = 0; };
}
}
int main() {
- __byref id X;
- __byref id X1;
- ^{ |X| X = 0; }; /* { dg-warning "has been deprecated in blocks" } */
+ __block id X;
+ __block id X1;
+ ^{ X = 0; };
if (i)
{
- __byref id X;
- __byref id X1;
- ^{ |X| X = 0; }; /* { dg-warning "has been deprecated in blocks" } */
+ __block id X;
+ __block id X1;
+ ^{ X = 0; };
}
return 0;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-8.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-8.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-8.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-blocks-test-8.c Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Test the __byreg runtime features. */
/* { dg-options "-mmacosx-version-min=10.5 -ObjC -framework Foundation" { target i?86-*-darwin* } } */
/* { dg-do run { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#import <Foundation/Foundation.h>
@@ -49,15 +49,26 @@
BLOCK_IS_GC = (1 << 27),
};
+/* APPLE LOCAL begin radar 5847213 - radar 6329245 */
struct Block_basic {
- void *isa;
- int Block_flags; // int32_t
- int Block_size; // XXX should be packed into Block_flags
+ void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
+ int Block_flags;
+ int reserved;
void (*Block_invoke)(void *);
- void (*Block_copy)(void *dst, void *src);
- void (*Block_dispose)(void *);
- //long params[0]; // generic space for const & byref hidden params, return value, variable on needs of course
+
+ struct Block_descriptor_1 {
+ unsigned long int reserved; // NULL
+ unsigned long int Block_size; // sizeof(struct Block_literal_1)
+
+ // optional helper functions
+ void (*Block_copy)(void *dst, void *src);
+ void (*Block_dispose)(void *src);
+ } *descriptor;
+
+ // imported variables
};
+/* APPLE LOCAL end radar 5847213 - radar 6329245 */
+
struct Block_byref {
void* isa;
struct Block_byref *forwarding;
@@ -90,8 +101,8 @@
}
int main(int argc, char *argv[]) {
- id __byref dumbo = newDumbObject(); //[DumbObject new];
- void (^dummy)(void) = ^{ | dumbo | /* { dg-warning "has been deprecated in blocks" } */
+ id __block dumbo = newDumbObject(); //[DumbObject new];
+ void (^dummy)(void) = ^{
[dumbo self];
};
@@ -102,8 +113,8 @@
}
char result[200];
- printf("calling out to copy support helper at %p\n", aBlock->Block_copy);
- (*aBlock->Block_copy)(result, aBlock); // do fixup
+ printf("calling out to copy support helper at %p\n", aBlock->descriptor->Block_copy);
+ (*aBlock->descriptor->Block_copy)(result, aBlock); // do fixup
// The copy/destroy helper should have had a callout to _Block_byref_assign_copy for its byref block
if (! ByrefAssignCopy) {
@@ -117,7 +128,7 @@
return 1;
}
- (*aBlock->Block_dispose)(aBlock);
+ (*aBlock->descriptor->Block_dispose)(aBlock);
return 0;
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-2.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-2.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-2.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,35 @@
+/* APPLE LOCAL file radar 6237616 */
+/* { dg-do compile } */
+/* { dg-options "-g -O3 -dA -mmacosx-version-min=10.6" }*/
+/* { dg-final { scan-assembler "DW_OP_breg\[0-9a-f]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x0+\[ \t]+\[#;@]\[ \t]sleb128 0+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x6+\[ \t]+\[#;@]\[ \t]DW_OP_deref+\[ \t\n]+\[ \t]\\.byte+\[ \t]\[0x6;0x23]+\[ \t]+\[#;@]\[ \t]\[DW_OP_deref;DW_OP_plus_uconst]"} } */
+/* { dg-final { scan-assembler-not "DW_OP_reg\[0-9a-f]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x6+\[ \t]+\[#;@]\[ \t]DW_OP_deref"} } */
+
+#include <stdio.h>
+
+int
+main ()
+{
+ int val_1, val_2;
+
+ int (^my_block) (int);
+
+ if (1)
+ {
+ __block int use_by_ref = 1;
+ int use_by_value = 0xfefefefe;
+
+ my_block = ^ (int in_value) {
+ use_by_ref++;
+ printf ("Block function has: %d %d %d.\n", in_value, use_by_value, use_by_ref);
+ return in_value + use_by_ref + use_by_value;
+ };
+ use_by_ref++;
+ val_1 = my_block (10);
+ }
+
+ val_1 = my_block (20);
+ val_2 = my_block (30);
+ printf ("Got: %d and %d.\n", val_1, val_2);
+
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-3.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-3.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-3.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-3.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,35 @@
+/* APPLE LOCAL file radar 6237616 */
+/* { dg-do compile } */
+/* { dg-options "-g -O0 -dA -mmacosx-version-min=10.6" }*/
+/* { dg-final { scan-assembler "line 15+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x0+\[ \t]+\[#;@]\[ \t]DW_LNE_set_address+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x\[0-9a-f]+\[ \t]+\[#;@]\[ \t]uleb128 0x\[0-9a-f]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x2+\[ \t\n]+\[ \t]\[\\.long;\\.quad]+\[ \t]LM\[0-9]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x\[0-9a-f]+\[ \t]+\[#;@]\[ \t]line 16"} } */
+/* { dg-final { scan-assembler-not "line 15+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x0+\[ \t]+\[#;@]\[ \t]DW_LNE_set_address+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x\[0-9a-f]+\[ \t]+\[#;@]\[ \t]uleb128 0x\[0-9a-f]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x2+\[ \t\n]+\[ \t]\[\\.long;\\.quad]+\[ \t]LM\[0-9]+\[ \t\n]+\[ \t]\\.byte+\[ \t]0x\[0-9a-f]+\[ \t]+\[#;@]\[ \t]DW_LNS_copy" } } */
+
+#include <stdio.h>
+#line 3
+int
+main ()
+{
+ int val_1, val_2;
+
+ int (^my_block) (int);
+
+ if (1)
+ {
+ __block int use_by_ref = 1;
+ int use_by_value = 0xfefefefe;
+
+ my_block = ^ (int in_value) {
+ use_by_ref++;
+ printf ("Block function has: %d %d %d.\n", in_value, use_by_value, use_by_ref);
+ return in_value + use_by_ref + use_by_value;
+ };
+ use_by_ref++;
+ val_1 = my_block (10);
+ }
+
+ val_1 = my_block (20);
+ val_2 = my_block (30);
+ printf ("Got: %d and %d.\n", val_1, val_2);
+
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-attribute.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-attribute.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-attribute.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref-attribute.c Mon Nov 3 02:35:57 2008
@@ -1,11 +1,11 @@
/* APPLE LOCAL file radar 6096219 */
-/* Test that __byref attribute can be used directly. */
+/* Test that __block attribute can be used directly. */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
/* { dg-do compile } */
int main()
{
- __byref int JJJJ;
+ __block int JJJJ;
__attribute__((__blocks__(byref))) int III;
int (^XXX)(void) = ^{ return III+JJJJ; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-byref.c Mon Nov 3 02:35:57 2008
@@ -4,38 +4,26 @@
/* { dg-options "-fblocks" } */
int main() {
+ __block int a;
+ __block int b;
int x, y;
^{ };
- ^{|x|}; /* { dg-warning "has been deprecated in blocks" } */
+ ^{};
- ^{ |x,y| int r; return x+y+r; }; /* { dg-warning "has been deprecated in blocks" } */
- ^{ |x,y|; int r; return x+y+r; }; /* { dg-warning "has been deprecated in blocks" } */
+ ^{ int r; return x+y+r; };
+ ^{ int r; return x+y+r; };
- ^{ |x,y|; int r; return x+y+r; /* { dg-warning "has been deprecated in blocks" } */
+ ^{ int r; return x+y+r;
^{
- |x,y|; int r; return x+y; /* { dg-warning "has been deprecated in blocks" } */
+ int r; return x+y;
};
};
- ^{ |x,y|; int r; return x+y+r; /* { dg-warning "has been deprecated in blocks" } */
- ^{
- { |x,y|; int r; return x+y; }; /* { dg-error "expected expression before" } */
- };
- };
+ ^{a = 1;};
- ^ { int r;
- |x, y| /* { dg-error "expected expression before" } */
- };
-
- ^{| /* { dg-warning "has been deprecated in blocks" } */
- main()|}; /* { dg-error "only a visible variable may be used in a block byref declaration" } */
-
- /* Assigning to byref variables. */
- ^{|x| x = 1;}; /* { dg-warning "has been deprecated in blocks" } */
-
- ^{ |x,y| /* { dg-warning "has been deprecated in blocks" } */
- if (x != y)
- x = y = 100;
+ ^{
+ if (a != b)
+ a = b = 100;
};
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-codegen-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-codegen-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-codegen-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-codegen-1.c Mon Nov 3 02:35:57 2008
@@ -14,14 +14,14 @@
}
int main() {
- int x = 1;
- int y = 2;
- double res = test(^(int z){|y| y = x+z; return (double)x; }); /* { dg-warning "has been deprecated in blocks" } */
+ __block int x = 1;
+ __block int y = 2;
+ double res = test(^(int z){y = x+z; return (double)x; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 1 || y != 43)
exit(1);
- res = test(^(int z){|x| x = x+z; return (double)y; }); /* { dg-warning "has been deprecated in blocks" } */
+ res = test(^(int z){x = x+z; return (double)y; });
printf("result = %f x = %d y = %d\n", res, x, y);
if (x != 43 || y != 43)
exit(1);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-complicated-type.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-complicated-type.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-complicated-type.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-complicated-type.c Mon Nov 3 02:35:57 2008
@@ -15,6 +15,8 @@
int (^(^block)(double x))(char, short);
void foo() {
- block = ^(double x){ return ^(char c, short y) { return (int)c + y; };}; /* { dg-error "returning block that lives on the local stack" } */
+ int one = 1;
+ /* APPLE LOCAL radar 6230297 */
+ block = ^(double x){ return ^(char c, short y) { return one + (int)c + y; };}; /* { dg-error "returning block that lives on the local stack" } */
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-copy-destroy.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-copy-destroy.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-copy-destroy.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-copy-destroy.c Mon Nov 3 02:35:57 2008
@@ -12,10 +12,11 @@
@implementation Root
- (void)example {
- int y, x;
+ int x;
+ __block int y;
NSAutoreleasePool *pool = [NSAutoreleasePool new];
NSAutoreleasePool *relpool = [NSAutoreleasePool new];
- bar(^(int z){ |y| y = x+z; [pool drain]; if (y) y++; [relpool release]; return y+2.0; }); /* { dg-warning "has been deprecated in blocks" } */
+ bar(^(int z){ y = x+z; [pool drain]; if (y) y++; [relpool release]; return y+2.0; });
}
@end
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-1.c Mon Nov 3 02:35:57 2008
@@ -4,7 +4,8 @@
/* { dg-do compile } */
/* { dg-options "-g -O0 -fblocks -dA" } */
-/* { dg-final { scan-assembler "invoke_impl.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_descriptor.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_literal_generic.*DW_AT_name" } } */
struct inStruct {
void (^genericBlockPtr)();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-debug-2.c Mon Nov 3 02:35:57 2008
@@ -4,7 +4,8 @@
/* { dg-do compile } */
/* { dg-options "-g -O0 -fblocks -dA" } */
-/* { dg-final { scan-assembler "invoke_impl.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_descriptor.*DW_AT_name" } } */
+/* { dg-final { scan-assembler "__block_literal_generic.*DW_AT_name" } } */
void (^os)();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-dup-invoke_impl.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-dup-invoke_impl.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-dup-invoke_impl.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-dup-invoke_impl.c Mon Nov 3 02:35:57 2008
@@ -23,13 +23,13 @@
}
int main() {
- enum numbers x = one;
- enum numbers y = two;
+ __block enum numbers x = one;
+ __block enum numbers y = two;
myblock CL = ^(enum numbers z)
- {|y| y = z; /* { dg-warning "has been deprecated in blocks" } */
+ {y = z;
test (
- ^ (enum numbers z) { |x| /* { dg-warning "has been deprecated in blocks" } */
+ ^ (enum numbers z) {
x = z;
return (enum numbers) four;
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-duplicate-err.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-duplicate-err.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-duplicate-err.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-duplicate-err.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,14 @@
+/* APPLE LOCAL file radar 6310599 */
+/* Check that internal fields do not conflict with user names. */
+/* { dg-options "-fblocks" } */
+/* { dg-do compile } */
+
+int main()
+{
+ __block int flags;
+ __block void *isa;
+
+ ^{ flags=1; isa = (void *)isa; };
+ return 0;
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-enum.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-enum.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-enum.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-enum.c Mon Nov 3 02:35:57 2008
@@ -20,15 +20,15 @@
}
int main() {
- enum numbers x = one;
- enum numbers y = two;
+ __block enum numbers x = one;
+ __block enum numbers y = two;
- enum numbers res = test(^(enum numbers z){|y| y = z; return x; }); /* { dg-warning "has been deprecated in blocks" } */
+ enum numbers res = test(^(enum numbers z){y = z; return x; });
if (x != one || y != three || res != one)
exit(1);
- res = test(^(enum numbers z){|x| x = z; return x; }); /* { dg-warning "has been deprecated in blocks" } */
+ res = test(^(enum numbers z){x = z; return x; });
if (x != three || res != three)
exit(1);
return 0;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-error-global-byref.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-error-global-byref.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-error-global-byref.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-error-global-byref.c Mon Nov 3 02:35:57 2008
@@ -16,7 +16,7 @@
static int static_local = 10;
int local;
CallBlock( ^ {++glob;
- CallBlock(^ { |glob, static_local| /* { dg-warning "has been deprecated in blocks" } */
+ CallBlock(^ {
++glob;
stat++;
++static_local;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-do.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-do.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-do.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-do.c Mon Nov 3 02:35:57 2008
@@ -13,22 +13,20 @@
}
int main() {
- __byref int O1;
- int p = 0;
- do
- {
- __byref int I1;
- do
- {
- __byref int J1;
- if (p == 2)
- break;
- }
- while ( ++p < 3);
+ {
+ __block int O1;
+ int p = 0;
+ do {
+ __block int I1;
+ do {
+ __block int J1;
+ if (p == 2)
+ break;
+ } while ( ++p < 3);
if (p == 4)
break;
- }
- while (++p != 5);
+ } while (++p != 5);
+ }
return count-7;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for.c Mon Nov 3 02:35:57 2008
@@ -7,19 +7,19 @@
static int count;
static void _Block_byref_release(void * arg) {
- ++count;
+ ++count;
}
-int main()
-{
- __byref int O1;
+int main() {
+ {
+ __block int O1;
int i;
for (i = 1; i <= 5; i++)
- {
- __byref int I1;
- }
+ {
+ __block int I1;
+ }
if (count != 5)
- abort();
- return count - 6;
+ abort();
+ }
+ return count - 6;
}
-
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-for1.c Mon Nov 3 02:35:57 2008
@@ -14,18 +14,20 @@
}
int main() {
- __byref int O1;
+ {
+ __block int O1;
int i;
int p;
for (i = 1; i <= 5; i++) {
- __byref int I1;
+ __block int I1;
p = 0;
while (p != 10) {
- __byref int II1;
+ __block int II1;
if (p == 2)
break;
++p;
}
}
+ }
return count-21;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-goto.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-goto.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-goto.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-goto.c Mon Nov 3 02:35:57 2008
@@ -2,25 +2,21 @@
/* { dg-options "-fblocks" } */
/* { dg-do compile } */
-
-int foo(int p)
-{
- __byref int O1;
- int i;
- LOUT: ;
- for (i = 1; i < 100; i++)
- {
- __byref int I1;
- while (p < 0)
- {
- __byref int II1;
- if (p == 100)
- goto LOUT; /* { dg-error "local byref variable II1 is in the scope of this goto" } */
- ++p;
- if (p == 2345)
- break;
- }
+int main(int p) {
+ p = -5;
+ __block int O1;
+ int i;
+ LOUT: ;
+ for (i = 1; i < 100; i++) {
+ __block int I1;
+ while (p < 0) {
+ __block int II1;
+ if (p == 100)
+ goto LOUT;
+ ++p;
+ if (p == 2345)
+ break;
}
- return 0;
+ }
+ return 0;
}
-
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-nested-while.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-nested-while.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-nested-while.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-nested-while.c Mon Nov 3 02:35:57 2008
@@ -16,8 +16,8 @@
void objc_get_type_qualifiers (int flag, int type) {
while (flag--)
while (type++ < 4) {
- __byref int W1;
- __byref int W2;
+ __block int W1;
+ __block int W2;
if (type == 2)
break;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return.c Mon Nov 3 02:35:57 2008
@@ -15,12 +15,17 @@
}
-int main() {
- __byref int X = 1234;
+int main1() {
+ __block int X = 1234;
if (X) {
- __byref int local_BYREF = 100;
+ __block int local_BYREF = 100;
X += 100 + local_BYREF;
return count-2;
}
return -1;
}
+
+int main() {
+ main1();
+ return count-2;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-return1.c Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 6083129 byref escapes */
+/* APPLE LOCAL file radar 6083129 block escapes */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -17,13 +17,13 @@
void *_NSConcreteStackBlock;
void FOO(int arg) {
- __byref int X = 1234;
+ __block int X = 1234;
if (arg) {
- __byref int local_BYREF = 100;
+ __block int local_BYREF = 100;
X += 100 + local_BYREF;
return;
}
- ^{ |X| X++; }; /* { dg-warning "has been deprecated in blocks" } */
+ ^{ X++; };
X = 1000;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-switch.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-switch.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-switch.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-switch.c Mon Nov 3 02:35:57 2008
@@ -15,33 +15,33 @@
}
int foo(int p, int q) {
- __byref int O1;
+ __block int O1;
switch (p) {
case 1:
{
- __byref int I1;
+ __block int I1;
I1 += 1;
break;
}
case 10:
{
- __byref int J1;
+ __block int J1;
break;
}
default :
{
- __byref int D1;
- __byref int D2;
+ __block int D1;
+ __block int D2;
switch (q) {
case 11:
{
- __byref int Q1;
+ __block int Q1;
break;
}
default:
{
- __byref int ID1;
- __byref int ID2;
+ __block int ID1;
+ __block int ID2;
}
};
break;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-while.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-while.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-while.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-escape-while.c Mon Nov 3 02:35:57 2008
@@ -12,14 +12,16 @@
int main()
{
- __byref int O1;
+ {
+ __block int O1;
int i = 0;
while (++i != 5)
{
- __byref int I1;
+ __block int I1;
}
if (count != 4)
abort();
+ }
return count - 5;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-explicit-return-type.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-explicit-return-type.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-explicit-return-type.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-explicit-return-type.c Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 6185344 */
+/* APPLE LOCAL file radar 6185344 - updated for radar 6230297 */
/* Test for blocks with explicit return type specified. */
/* { dg-options "-mmacosx-version-min=10.6 -ObjC" { target *-*-darwin* } } */
/* { dg-do compile } */
@@ -75,9 +75,10 @@
int (^(^block)(double x))(char, short);
void foo() {
- block = ^(double x){ return ^int(char c, short y) { return c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
+ int one = 1;
+ block = ^(double x){ return ^int(char c, short y) { return one + c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
// or:
- block = ^(double x){ return ^(char c, short y) { return (int)c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
+ block = ^(double x){ return ^(char c, short y) { return one + (int)c + y; };}; /* { dg-warning "returning block that lives on the local stack" } */
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-1.c Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* APPLE LOCAL file radar 5803005 */
-/* Test that all global variables referenced in blocks are treated as 'byref' as default. */
+/* Test that all global variables referenced in blocks are treated as 'block' as default. */
/* { dg-do run } */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
@@ -15,8 +15,8 @@
int foo() {
static int local = 10;
- CallBlock( ^ {| local| ++glob; ++stat; ++local; /* { dg-warning "has been deprecated in blocks" } */
- CallBlock(^ { |local| ++glob; ++stat; ++local; }); /* { dg-warning "has been deprecated in blocks" } */
+ CallBlock( ^ {++glob; ++stat; ++local;
+ CallBlock(^ { ++glob; ++stat; ++local; });
++glob; ++stat; ++local; });
if (glob != 13 || stat != 13 || local != 13)
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref-2.c Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* APPLE LOCAL file radar 6014138 */
-/* Test use of __byref on locals which will be used as 'byref' variables in blocks. */
+/* Test use of __block on locals which will be used as 'byref' variables in blocks. */
/* { dg-do run } */
/* { dg-options "-mmacosx-version-min=10.5 -fblocks" { target *-*-darwin* } } */
@@ -14,9 +14,9 @@
int foo() {
- __byref int local_byref_1 = 10;
- __byref int local_byref_2 = 10;
- __byref int local_byref_3 = 10;
+ __block int local_byref_1 = 10;
+ __block int local_byref_2 = 10;
+ __block int local_byref_3 = 10;
CallBlock( ^ { ++local_byref_1; ++local_byref_2; ++local_byref_3;
CallBlock(^ { ++local_byref_1; ++local_byref_2; ++local_byref_3; });
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-global-byref.c Mon Nov 3 02:35:57 2008
@@ -15,8 +15,8 @@
int foo() {
static int local = 10;
- CallBlock( ^ {| glob, stat, local| ++glob; ++stat; ++local; /* { dg-warning "has been deprecated in blocks" } */
- CallBlock(^ { |glob, stat, local| ++glob; ++stat; ++local; }); /* { dg-warning "has been deprecated in blocks" } */
+ CallBlock( ^ {++glob; ++stat; ++local;
+ CallBlock(^ { ++glob; ++stat; ++local; });
++glob; ++stat; ++local; });
if (glob != 13 || stat != 13 || local != 13)
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-in-foreach-header.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-in-foreach-header.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-in-foreach-header.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-in-foreach-header.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,57 @@
+/* APPLE LOCAL file radar 6268817 */
+/* Testing use of block literal expression in ObjC's enumeration foreach-statement loop header. */
+/* { dg-options "-mmacosx-version-min=10.6 -ObjC -framework Foundation" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+#import <Foundation/Foundation.h>
+
+ at interface TargetSymbol : NSObject {
+ NSString * _symbolName;
+}
+ at property (copy) NSString *name;
+ at end
+
+ at implementation TargetSymbol
+ at synthesize name = _symbolName;
+ at end
+
+static void Looper(NSArray *symbols) {
+ // 1. Block literal assigned to a block pointer, which is used in loop: build succeeds
+ NSComparator comparator = ^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];};
+
+ for (id symbol in [symbols sortedArrayUsingComparator:comparator]) {
+ // Do something
+ }
+
+ // 2. Block expression literal used, but still outside loop: build succeeds
+ NSArray *sortedSymbols = [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}];
+
+ for (id symbol in sortedSymbols) {
+ // Do something
+ }
+
+ // 3. Block expression literal used directly in loop: build fails
+ for (id symbol in [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}]) {
+ // Do something
+ }
+
+ // 3. Block expression literal used directly in loop: build fails
+ for (id symbol in [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}]) {
+ // Do something
+ }
+
+ // 3. Block expression literal used directly in loop: build fails
+ for (id symbol in [symbols sortedArrayUsingComparator:^(id target1, id target2){return [((TargetSymbol *)target1).name compare:((TargetSymbol *)target2).name];}]) {
+ // Do something
+ }
+}
+
+
+int main (int argc, const char * argv[]) {
+ NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+
+ // insert code here...
+ NSLog(@"Hello, World!");
+ [pool drain];
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-literal.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-literal.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-literal.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-literal.c Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file radar 5732232, 6034839 - blocks */
+/* APPLE LOCAL file radar 5732232, 6034839, 6230297 - blocks */
/* { dg-do compile } */
/* { dg-options "-fblocks" } */
@@ -27,7 +27,7 @@
/* { dg-error "blocks require" "" { target *-*-* } 26 } */
; /* { dg-error "argument list is required for block expression literals" } */
- return ^{printf("\nBlock\n"); }; /* { dg-error "returning block that lives on the local stack" } */
+ return ^{printf("\nBlock\n"); };
}
void test2() {
@@ -44,7 +44,8 @@
}
void (^test3())(void) {
- return ^{}; /* { dg-error "returning block that lives on the local stack" } */
+ /* APPLE LOCAL radar 6230297 */
+ return ^{};
}
void test4() {
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-stack.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-stack.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-stack.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-stack.c Mon Nov 3 02:35:57 2008
@@ -1,8 +1,9 @@
-/* APPLE LOCAL file radar 5732232 - blocks */
+/* APPLE LOCAL file radar 5732232 - radar 6230297 - blocks */
/* { dg-do compile } */
/* { dg-options "-fblocks" } */
void (^test3())(void) {
- return ^{}; /* { dg-error "returning block that lives on the local stack" } */
+ __block int i;
+ return ^{i = 1; }; /* { dg-error "returning block that lives on the local stack" } */
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-static-test.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-static-test.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-static-test.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-local-static-test.c Mon Nov 3 02:35:57 2008
@@ -2,6 +2,7 @@
/* local statics need be treated same as file static (byref). */
/* { dg-options "-mmacosx-version-min=10.6" { target *-*-darwin* } } */
/* { dg-do run } */
+/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
#include <stdio.h>
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-localisglobal.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-localisglobal.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-localisglobal.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-localisglobal.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,42 @@
+/* APPLE LOCAL file radar 6230297 */
+/* { dg-options "-mmacosx-version-min=10.6" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+/*
+ * localisglobal.c
+ * testObjects
+ *
+ * Created by Blaine Garst on 9/29/08.
+ * Copyright 2008 __MyCompanyName__. All rights reserved.
+ *
+ * works in all configurations
+ * CONFIG
+ * rdar://6230297
+ */
+
+#include <stdio.h>
+
+void (^global)(void) = ^{ printf("hello world\n"); };
+
+int aresame(void *first, void *second) {
+ long *f = (long *)first;
+ long *s = (long *)second;
+ return *f == *s;
+}
+int main(int argc, char *argv[]) {
+ int i = 10;
+ void (^local)(void) = ^ { printf("hi %d\n", i); };
+ void (^localisglobal)(void) = ^ { printf("hi\n"); };
+
+ if (aresame(local, localisglobal)) {
+ printf("local block could be global, but isn't\n");
+ return 1;
+ }
+ if (!aresame(global, localisglobal)) {
+ printf("local block is not global, not stack, what is it??\n");
+ return 1;
+ }
+ printf("%s: success\n", argv[0]);
+ return 0;
+
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nested-block-var.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nested-block-var.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nested-block-var.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nested-block-var.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,32 @@
+/* APPLE LOCAL file radar 6225809 - radar 5847213 */
+/* __block var used in a nested block neeb be implicitly declared in
+ each intervening block. */
+/* { dg-options "-mmacosx-version-min=10.6 " { target *-*-darwin* } } */
+/* { dg-do run } */
+
+#include <stdio.h>
+
+static void Block_copy (void (^I)(void))
+{
+ I();
+}
+
+int main(int argc, char *argv[]) {
+ __block int a = 42;
+ int save_a = a; // just to keep the address on the stack.
+
+ void (^b)(void) = ^{
+ Block_copy(^{
+ a = 2;
+ });
+ };
+
+ Block_copy(b);
+
+ if(a == save_a) {
+ printf("**** __block heap storage should have been created at this point\n");
+ return 1;
+ }
+ printf("%s: Success (old %d new %d)\n", argv[0], save_a, a);
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-no-block-def.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-no-block-def.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-no-block-def.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-no-block-def.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,7 @@
+/* APPLE LOCAL radar 6230656 */
+/* { dg-options "-fno-blocks" } */
+/* { dg-do compile { target *-*-darwin* } } */
+
+#if __block
+#error
+#endif
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-1.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file radar 6083129 byref escapes */
/* Test for generation of escape _Block_byref_release call when a local
- __byref variable is copied in. */
+ __block variable is copied in. */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -13,7 +13,7 @@
static int count;
static void _Block_byref_release(void * arg) {
- ++count;
+ ++count;
}
void junk(void (^block)(void)) {
@@ -21,16 +21,16 @@
}
int test() {
- int __byref i = 10;
- void (^dummy)(void) = ^{ printf("i = %d\n", i); };
- junk(dummy);
+ {
+ int __block i = 10;
+ void (^dummy)(void) = ^{ printf("i = %d\n", i); };
+ junk(dummy);
+ }
return count;
}
-int main()
-{
- if ( test() != 1)
- abort();
- return 0;
+int main() {
+ if ( test() != 1)
+ abort();
+ return 0;
}
-
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-2.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file radar 6083129 byref escapes */
/* Test for generation of escape _Block_byref_release call when a local
- __byref variable is copied in and block has a return statement. */
+ __block variable is copied in and block has a return statement. */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -21,9 +21,11 @@
}
int test() {
- int __byref i = 10;
+ {
+ int __block i = 10;
int (^dummy)(void) = ^{ printf("i = %d\n", i); return i; };
junk(dummy);
+ }
return count;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-3.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-3.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-3.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper-3.c Mon Nov 3 02:35:57 2008
@@ -1,5 +1,5 @@
/* APPLE LOCAL file radar 6083129 byref escapes */
-/* Test for generation of escape _Block_byref_release call when a __byref
+/* Test for generation of escape _Block_byref_release call when a __block
variable inside a block is declared and used. */
/* { dg-options "-fblocks" } */
/* { dg-do run } */
@@ -21,7 +21,7 @@
}
int test() {
- void (^dummy)(void) = ^{ int __byref i = 10; printf("i = %d\n", i); };
+ void (^dummy)(void) = ^{ int __block i = 10; printf("i = %d\n", i); };
junk(dummy);
return count;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-noescape-helper.c Mon Nov 3 02:35:57 2008
@@ -19,9 +19,11 @@
}
int test() {
- int __byref i = 10;
- void (^dummy)(void) = ^{ | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ {
+ int __block i = 10;
+ void (^dummy)(void) = ^{ ++i; };
junk(dummy);
+ }
return count;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nullblockisa.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nullblockisa.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nullblockisa.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-nullblockisa.c Mon Nov 3 02:35:57 2008
@@ -5,13 +5,9 @@
#include <stdio.h>
#include <stdlib.h>
-#define HASISA 1
-
void check(void *ptr) {
struct inner {
-#if HASISA
void* isa; // should be zero
-#endif
long forwarding;
int flags;
int size;
@@ -19,20 +15,29 @@
// long disposehelper not needed
int i; //
};
+/* APPLE LOCAL begin radar 5847213 - radar 6329245 */
struct block_with_blocki {
- long isa;
- int flags;
- int size;
- long impl;
- long copyhelper;
- long destroyhelper;
- struct inner *blocki;
+ void *isa; // initialized to &_NSConcreteStackBlock or &_NSConcreteGlobalBlock
+ int Block_flags;
+ int reserved;
+ void *FuncPtr;
+ struct Block_descriptor_1 {
+ unsigned long int reserved; // NULL
+ unsigned long int size; // sizeof(struct Block_literal_1)
+
+ // optional helper functions
+ void (*Block_copy)(void *dst, void *src);
+ void (*Block_dispose)(void *src);
+ } *descriptor;
+ struct inner *blocki;
} *block = (struct block_with_blocki *)ptr;
+/* APPLE LOCAL end radar 5847213 - radar 6329245 */
+
// sanity checks
- if (block->size != sizeof(struct block_with_blocki)) {
+ if (block->descriptor->size != sizeof(struct block_with_blocki)) {
// layout funny
printf("layout is funny, struct size is %d vs runtime size %ld\n",
- block->size,
+ (int)block->descriptor->size,
sizeof(struct block_with_blocki));
exit(1);
}
@@ -41,12 +46,10 @@
block->blocki->size);
exit(1);
}
-#if HASISA
if (block->blocki->isa != (void*)NULL) {
printf("not a NULL __block isa\n");
exit(1);
}
-#endif
return;
}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-objectassign.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-objectassign.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-objectassign.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-objectassign.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,79 @@
+/* APPLE LOCAL file radar 6175959 */
+/* Test for generation of two new APIs; _Block_object_assign and _Block_object_dispose */
+/* { dg-options "-mmacosx-version-min=10.6 -fblocks" { target *-*-darwin* } } */
+/* { dg-do run } */
+
+#include <stdio.h>
+
+#define BLOCK_HAS_DESCRIPTOR (1 << 29)
+#define BLOCK_HAS_COPY_DISPOSE (1 << 25)
+
+struct Block_descriptor {
+ unsigned long int reserved;
+ unsigned long int size;
+ void (*copy)(void *dst, void *src);
+ void (*dispose)(void *);
+};
+
+struct Block_layout {
+ void *isa;
+ int flags;
+ int reserved;
+ void (*invoke)(void *, ...);
+ struct Block_descriptor *descriptor;
+ // imported variables
+};
+
+int AssignCalled = 0;
+int DisposeCalled = 0;
+
+// local copy instead of libSystem.B.dylib copy
+void _Block_object_assign(void *destAddr, const void *object, const int isWeak) {
+ printf("_Block_object_assign(%p, %p, %d) called\n", destAddr, object, isWeak);
+ AssignCalled = 1;
+}
+
+void _Block_object_dispose(const void *object, const int isWeak) {
+ printf("_Block_object_dispose(%p, %d) called\n", object, isWeak);
+ DisposeCalled = 1;
+}
+
+struct MyStruct {
+ long isa;
+ long field;
+};
+
+typedef struct MyStruct *__attribute__((NSObject)) MyStruct_t;
+
+int main(int argc, char *argv[]) {
+ // create a block
+ struct MyStruct X;
+ MyStruct_t xp = (MyStruct_t)&X;
+ xp->field = 10;
+ void (^myBlock)(void) = ^{ printf("field is %ld\n", xp->field); };
+ // should be a copy helper generated with a calls to above routines
+ // Lets find out!
+ struct Block_layout *bl = (struct Block_layout *)(void *)myBlock;
+ if ((bl->flags & BLOCK_HAS_DESCRIPTOR) != BLOCK_HAS_DESCRIPTOR) {
+ printf("using old runtime layout!\n");
+ return 1;
+ }
+ if ((bl->flags & BLOCK_HAS_COPY_DISPOSE) != BLOCK_HAS_COPY_DISPOSE) {
+ printf("no copy dispose!!!!\n");
+ return 1;
+ }
+ // call helper routines directly. These will, in turn, we hope, call the stubs above
+ long destBuffer[256];
+ printf("destbuffer is at %p, block at %p\n", destBuffer, (void *)bl);
+ bl->descriptor->copy(destBuffer, bl);
+ bl->descriptor->dispose(bl);
+ if (AssignCalled == 0) {
+ printf("did not call assign helper!\n");
+ return 1;
+ }
+ if (DisposeCalled == 0) {
+ printf("did not call dispose helper\n");
+ return 1;
+ }
+ return 0;
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-printf-attribute-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-printf-attribute-1.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-printf-attribute-1.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-printf-attribute-1.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,15 @@
+/* APPLE LOCAL file radar 6246527 */
+/* { dg-do compile } */
+/* { dg-options "-Wformat" } */
+
+int main()
+{
+ void (^b) (int arg, const char * format, ...) __attribute__ ((__format__ (__printf__, 1, 3))) = /* { dg-error "format string argument not a string type" } */
+ ^ __attribute__ ((__format__ (__printf__, 1, 3))) (int arg, const char * format, ...) {}; /* { dg-error "format string argument not a string type" } */
+ void (^z) (int arg, const char * format, ...) __attribute__ ((__format__ (__printf__, 2, 3))) = ^ __attribute__ ((__format__ (__printf__, 2, 3))) (int arg, const char * format, ...) {};
+
+ z(1, "%s", 1); /* { dg-warning "format \\'\%s\\' expects type \\'char \\*\\'\, but argument 3 has type \\'int\\'" } */
+ z(1, "%s", "HELLO");
+
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgc.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgc.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgc.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgc.c Mon Nov 3 02:35:57 2008
@@ -25,8 +25,8 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
void (^local)(void);
- int i = 10;
- Henry = ^ { | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ __block int i = 10;
+ Henry = ^ { ++i; };
local = Henry;
if (GlobalInt2 == 1) {
printf("%s: success\n", argv[0]);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgcivar.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgcivar.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgcivar.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-readweakgcivar.c Mon Nov 3 02:35:57 2008
@@ -30,10 +30,10 @@
int main(char *argc, char *argv[]) {
// an object should not be retained within a stack Block
- int i = 0;
+ __block int i = 0;
void (^local)(void);
Foo *foo = [[Foo alloc] init];
- foo->ivar = ^ { | i | ++i; }; /* { dg-warning "has been deprecated in blocks" } */
+ foo->ivar = ^ { ++i; };
local = foo->ivar;
if (GlobalInt2 == 1) {
printf("%s: success\n", argv[0]);
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-sentinel-attribute.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-sentinel-attribute.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-sentinel-attribute.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-sentinel-attribute.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,28 @@
+/* APPLE LOCAL file radar 6246527 */
+/* { dg-do compile } */
+/* { dg-options "-Wformat" } */
+#include <stddef.h>
+
+void (^e) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (1,1)));
+void (^e1) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (1,1, 3))); /* { dg-error "wrong number of arguments" "sentinel" } */
+
+int main()
+{
+ void (^b) (int arg, const char * format, ...) __attribute__ ((__sentinel__)) =
+ ^ __attribute__ ((__sentinel__)) (int arg, const char * format, ...) {};
+ void (^z) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (2))) = ^ __attribute__ ((__sentinel__ (2))) (int arg, const char * format, ...) {};
+
+
+ void (^y) (int arg, const char * format, ...) __attribute__ ((__sentinel__ (5))) = ^ __attribute__ ((__sentinel__ (5))) (int arg, const char * format, ...) {};
+
+ b(1, "%s", NULL); // OK
+ b(1, "%s", 0); /* { dg-warning "missing sentinel in function call" } */
+ z(1, "%s",4 ,1,0); /* { dg-warning "missing sentinel in function call" } */
+ z(1, "%s", NULL, 1, 0); // OK
+
+ y(1, "%s", 1,2,3,4,5,6,7); /* { dg-warning "missing sentinel in function call" } */
+
+ y(1, "%s", NULL,3,4,5,6,7); // OK
+
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-parameter.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-parameter.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-parameter.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-parameter.c Mon Nov 3 02:35:57 2008
@@ -5,8 +5,8 @@
int main()
{
- int i = 1;
- ^ { |i| i = 1; return i; }; /* { dg-warning "has been deprecated in blocks" } */
+ __block int i = 1;
+ ^ { i = 1; return i; };
return 0;
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-warn.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-warn.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-warn.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/block-unused-warn.c Mon Nov 3 02:35:57 2008
@@ -5,10 +5,10 @@
int main()
{
-int x = 10;
+__block int x = 10;
int y = 1;
-int (^myBlock)(void) = ^{ |x| return x+y; }; /* { dg-warning "has been deprecated in blocks" } */
+int (^myBlock)(void) = ^{ return x+y; };
myBlock();
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/const-cfstring-3.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/const-cfstring-3.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/const-cfstring-3.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/const-cfstring-3.c Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com>. */
/* { dg-do compile { target *-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-fconstant-cfstrings" } */
typedef const struct __CFString *CFStringRef;
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,35 @@
+/* APPLE LOCAL file, Radar 6275985 */
+/* { dg-do compile { target *-*-darwin* } } */
+/* { dg-options "-g -dA -save-temps -mmacosx-version-min=10.6" } */
+/* { dg-final { scan-assembler "__debug_inlined" } } */
+/* { dg-final { scan-assembler "\[#;@]\[ \t]+MIPS linkage name: \"getData\"" } } */
+/* { dg-final { scan-assembler "\[#;@]\[ \t]+Function name: \"getData\"" } } */
+/* { dg-final { scan-assembler "\[#;@]\[ \t]+MIPS linkage name: \"get_length\"" } } */
+/* { dg-final { scan-assembler "\[#;@]\[ \t]+Function name: \"get_length\"" } } */
+
+#include <stdio.h>
+#include <stdlib.h>
+
+struct mystruct {
+ int data;
+};
+
+int globl;
+
+static __inline__ __attribute__((always_inline)) getData (struct mystruct *a) {
+ return a->data * globl;
+}
+
+#include "debug-inlined-section.h"
+
+
+main (int argc, char **argv)
+{
+ struct mystruct c;
+ c.data = argc;
+ globl = c.data;
+// globl = getData (&c);
+ int b = get_length (&c);
+ printf ("%d\n", b);
+ return (c.data);
+}
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.h
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.h?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.h (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/debug-inlined-section.h Mon Nov 3 02:35:57 2008
@@ -0,0 +1,15 @@
+/* APPLE LOCAL file, Radar 6275985 */
+
+extern int globl;
+
+static __inline__ __attribute__((always_inline)) get_length (struct mystruct *d) {
+ if (globl && malloc (globl))
+ {
+ return getData (d) + globl;
+ }
+ else
+ return getData (d) * globl;
+}
+
+extern int globl;
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-1.c Mon Nov 3 02:35:57 2008
@@ -1,7 +1,7 @@
/* Test default cpu type */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* This test doesn't make sense on 64-bit */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-mmacosx-version-min=10.5" } */
int main()
{
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-cpu-2.c Mon Nov 3 02:35:57 2008
@@ -1,7 +1,7 @@
/* Test default cpu type */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* This test doesn't make sense on 64-bit darwin. */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-mmacosx-version-min=10.4" } */
int main()
{
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-x86_32-sse3.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-x86_32-sse3.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-x86_32-sse3.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/default-x86_32-sse3.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4515157 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } } */
+/* { dg-require-effective-target ilp32 } */
/* Ensure that 32-bit x86 does not imply -msse3 on Darwin/x86. */
#ifdef __SSE3__
#error "SSE3 should be disabled by default for x86 -m32"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/dynamic-no-pic-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/dynamic-no-pic-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/dynamic-no-pic-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/dynamic-no-pic-1.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file Radar 4010664 */
/* { dg-do compile { target i?86*-*-darwin* } } */
-/* { dg-skip-if "" { i?86*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-mdynamic-no-pic -march=pentium4" } */
/* { dg-final { scan-assembler-not "86.get_pc_thunk" } } */
#define TEST_STRING "test string %d"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-att-stub-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-att-stub-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-att-stub-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-att-stub-1.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file Radar 4164563 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL axe stubs 5571540 */
/* { dg-options "-matt-stubs -mmacosx-version-min=10.4" } */
/* { dg-final { scan-assembler "hlt" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-bitmask1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-bitmask1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-bitmask1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-bitmask1.c Mon Nov 3 02:35:57 2008
@@ -1,7 +1,8 @@
/* APPLE LOCAL file radar 4645709 */
/* { dg-do compile { target "i?86-*-*" } } */
/* { dg-options "-O2" } */
-/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
+/* LLVM LOCAL */
/* { dg-final { scan-assembler "and.*(0xffffff00|4294967040)" } } */
unsigned char lut[256];
/* LLVM LOCAL make these global */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-deep-branch-predict-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-deep-branch-predict-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-deep-branch-predict-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-deep-branch-predict-1.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file Radar 4010498 et. al. */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-march=pentium4 -fPIC" } */
/* { dg-final { scan-assembler "86.get_pc_thunk" } } */
#define TEST_STRING "test string %d"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-regparmandstackparm-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-regparmandstackparm-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-regparmandstackparm-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-regparmandstackparm-1.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 420513 */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O2" } */
/* Look for both entry points to the regparmandstackparm function. */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-ssetype-6.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-ssetype-6.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-ssetype-6.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-ssetype-6.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4099020 */
/* { dg-do compile { target i?86-*-* } } */
-/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O2 -msse2 -march=pentium4" } */
/* { dg-final { scan-assembler-times "movq\[^\\n\]*" 3} } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-unaligned-movaps.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-unaligned-movaps.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-unaligned-movaps.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/i386-unaligned-movaps.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL begin radar 4614623 */
/* { dg-do run { target i?86-*-* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O -mmmx -fomit-frame-pointer -march=pentium-m" } */
#include <signal.h>
extern void abort (void);
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/longcall-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/longcall-2.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/longcall-2.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/longcall-2.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,27 @@
+/* Verify that switch tables aren't fundamentally broken with
+ -mlongcall. */
+/* { dg-options "-mlongcall" } */
+/* { dg-do run } */
+
+int val = 3;
+
+int main (void)
+{
+ switch (val)
+ {
+ case 0:
+ return 1;
+ case 1:
+ return 2;
+ case 2:
+ return 4;
+ case 3:
+ return 0;
+ case 4:
+ return 8;
+ case 5:
+ return 16;
+ }
+ return 32;
+}
+
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/no-nested-deprecated-warn.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/no-nested-deprecated-warn.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/no-nested-deprecated-warn.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/no-nested-deprecated-warn.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,19 @@
+/* APPLE LOCAL file radar 4746503 */
+/* Don't issue 'deprecated' warning in a function which itself is deprecated. */
+
+extern void foo() __attribute__((deprecated));
+extern void bar() __attribute__((deprecated));
+
+void foo() {}
+
+void bar() {
+ foo();
+}
+
+
+void gorf() {
+ foo(); /* { dg-warning "\\'foo\\' is deprecated" } */
+ bar(); /* { dg-warning "\\'bar\\' is deprecated" } */
+}
+
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/opt-size-2.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/opt-size-2.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/opt-size-2.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/opt-size-2.c Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL file 4231773 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-Oz -static" } */
/* { dg-final { scan-assembler "\tincl?\[ \]*_?global_x" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/r6292557.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/r6292557.c?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/r6292557.c (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.apple/r6292557.c Mon Nov 3 02:35:57 2008
@@ -0,0 +1,73 @@
+/* APPLE LOCAL begin radar 6292557 (copied from gcc.dg/i386-lshiftrt-1.c) */
+/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
+/* { dg-options "-g -O2 -msse" } */
+/* { dg-final { scan-assembler "__debug_inlined" } } */
+
+typedef double __v2df __attribute__ ((__vector_size__ (16)));
+typedef long long __v2di __attribute__ ((__vector_size__ (16)));
+typedef int __v4si __attribute__ ((__vector_size__ (16)));
+typedef short __v8hi __attribute__ ((__vector_size__ (16)));
+typedef char __v16qi __attribute__ ((__vector_size__ (16)));
+
+typedef __v2di __m128i;
+typedef __v2df __m128d;
+
+static inline __m128i __attribute__((__always_inline__, __nodebug__))
+_mm_packus_epi16 (__m128i __A, __m128i __B)
+{
+ return (__m128i)__builtin_ia32_packuswb128 ((__v8hi)__A, (__v8hi)__B);
+}
+
+
+static inline __m128i __attribute__((__always_inline__, __nodebug__))
+_mm_load_si128 (__m128i const *__P)
+{
+ return *__P;
+}
+
+static inline __m128i __attribute__((__always_inline__, __nodebug__))
+_mm_or_si128 (__m128i __A, __m128i __B)
+{
+ return (__m128i)__builtin_ia32_por128 ((__v2di)__A, (__v2di)__B);
+}
+static inline __m128i __attribute__((__always_inline__, __nodebug__))
+_mm_add_epi16 (__m128i __A, __m128i __B)
+{
+ return (__m128i)__builtin_ia32_paddw128 ((__v8hi)__A, (__v8hi)__B);
+}
+static inline int __attribute__((__always_inline__, __nodebug__))
+_mm_cvtsi128_si32 (__m128i __A)
+{
+ return __builtin_ia32_vec_ext_v4si ((__v4si)__A, 0);
+}
+void FUNC( unsigned char const* pixPtr)
+{
+
+ __m128i vu16YPredictionHi, vu16YPredictionLo;
+
+ __m128i vu16YPrediction3;
+ __m128i vtemp0, vtemp1, vtemp2, vtemp3;
+
+ vtemp2 = ((__m128i)__builtin_ia32_pslldqi128 (vu16YPrediction3, (4) * 8));
+ vtemp2 = ((__m128i)__builtin_ia32_psrldqi128 (vtemp2, (8) * 8));
+ vtemp3 = ((__m128i)__builtin_ia32_psrldqi128 (vu16YPrediction3, (6) * 8));
+ vtemp3 = ((__m128i)__builtin_ia32_pslldqi128 (vtemp3, (8) * 8));
+
+ vu16YPredictionLo = _mm_or_si128(vtemp2, vtemp3);
+
+ __m128i vs16YResidualHi, vs16YResidualLo, vs16YResultHi, vs16YResultLo;
+ __m128i vu8YResult;
+ unsigned int itemp0, itemp1, itemp2, itemp3;
+ vs16YResultHi = _mm_add_epi16(vu16YPredictionHi, vs16YResidualHi);
+ vs16YResultLo = _mm_add_epi16(vu16YPredictionLo, vs16YResidualLo);
+ vu8YResult = _mm_packus_epi16(vs16YResultHi, vs16YResultLo);
+ itemp0 = _mm_cvtsi128_si32(vu8YResult);
+ vu8YResult = ((__m128i)__builtin_ia32_psrldqi128 (vu8YResult, (4) * 8));
+ itemp1 = _mm_cvtsi128_si32(vu8YResult);
+ vu8YResult = ((__m128i)__builtin_ia32_psrldqi128 (vu8YResult, (4) * 8));
+ itemp2 = _mm_cvtsi128_si32(vu8YResult);
+ vu8YResult = ((__m128i)__builtin_ia32_psrldqi128 (vu8YResult, (4) * 8));
+ itemp3 = _mm_cvtsi128_si32(vu8YResult);
+ *(unsigned int*)pixPtr = itemp0;
+}
+/* APPLE LOCAL end radar 4266982 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.dg/cpp/_Pragma3.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.dg/cpp/_Pragma3.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.dg/cpp/_Pragma3.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.dg/cpp/_Pragma3.c Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-do preprocess } */
/* Pragma buffers have a NULL "inc" member, which we would dereference
- when getting a file's date and time.
+ when getting a file's date and time.
Based on PR 7526. 14 Aug 2002. */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/4891561.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/4891561.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/4891561.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/4891561.c Mon Nov 3 02:35:57 2008
@@ -1,7 +1,7 @@
/* APPLE LOCAL file radar 4891561 */
/* { dg-do compile { target i?86-*-darwin* } } */
/* { dg-options "-O1 -std=gnu99 -fno-inline -fschedule-insns -mtune=pentium-m" } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
static inline unsigned char ceq (unsigned char a, unsigned char b)
{
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/reload-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/reload-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/reload-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/reload-1.c Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-options "-O3 -msse2 -fdump-rtl-csa" } */
/* LLVM LOCAL fdump not supported */
/* { dg-require-fdump "" } */
-/* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-final { scan-rtl-dump "deleted 5 dead insns" "csa" } }*/
#include <emmintrin.h>
typedef __SIZE_TYPE__ size_t;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/stack-prot-kernel.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/stack-prot-kernel.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/stack-prot-kernel.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/i386/stack-prot-kernel.c Mon Nov 3 02:35:57 2008
@@ -1,5 +1,6 @@
/* { dg-do compile { target lp64 } } */
-/* { dg-skip-if "darwin x86_64 is pic" { *-*-darwin* } { "-m64" } { "" } } */
+/* APPLE LOCAL 64 bit default */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O2 -fstack-protector-all -mcmodel=kernel" } */
void test1 (int x)
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/powerpc/darwin-bool-1.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/powerpc/darwin-bool-1.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/powerpc/darwin-bool-1.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/powerpc/darwin-bool-1.c Mon Nov 3 02:35:57 2008
@@ -1,7 +1,8 @@
/* Check that sizeof(bool) is 4 if we don't use special options. */
/* Matt Austern <austern at apple.com> */
/* { dg-do run { target powerpc*-*-darwin* } } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* APPLE LOCAL 64 bit default */
+/* { dg-require-effective-target ilp32 } */
int dummy1[sizeof(_Bool) - 3];
int dummy2[5 - sizeof(_Bool)];
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/x86_64/abi/test_struct_returning.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/x86_64/abi/test_struct_returning.c?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/x86_64/abi/test_struct_returning.c (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/gcc.target/x86_64/abi/test_struct_returning.c Mon Nov 3 02:35:57 2008
@@ -233,7 +233,7 @@
D(600)
/* LLVM LOCAL */
D(601) D(602)
- if (num_failed)
+ if (num_failed)
abort ();
return 0;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/bitfield-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-1.mm Mon Nov 3 02:35:57 2008
@@ -8,7 +8,7 @@
/* { dg-options "-Wpadded -Wabi" } */
/* { dg-do run } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL ARM objc2 */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-4.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/bitfield-4.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-4.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/bitfield-4.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-lobjc -Wpadded" } */
/* { dg-do run } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL ARM objc2 */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cond-expr-warn.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/cond-expr-warn.mm?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cond-expr-warn.mm (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cond-expr-warn.mm Mon Nov 3 02:35:57 2008
@@ -0,0 +1,10 @@
+/* APPLE LOCAL file radar 6231433 */
+/* { dg-do compile } */
+
+ at interface NSKey @end
+ at interface UpdatesList @end
+
+void foo (int i, NSKey *NSKeyValueCoding_NullValue, UpdatesList *nukedUpdatesList)
+{
+ i ? NSKeyValueCoding_NullValue : nukedUpdatesList; /* { dg-warning "conditional expression" } */
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-cfstring-4.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/const-cfstring-4.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-cfstring-4.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-cfstring-4.mm Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fconstant-cfstrings" } */
/* { dg-do compile { target *-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
typedef const struct __CFString * CFStringRef;
CFStringRef appKey = (CFStringRef) @"com.apple.soundpref";
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-10.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/const-str-10.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-10.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-10.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-fnext-runtime -fno-constant-cfstrings" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-11.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/const-str-11.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-11.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-11.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-fnext-runtime -fno-constant-cfstrings -fconstant-string-class=XStr" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-12.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/const-str-12.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-12.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-12.mm Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fno-constant-cfstrings -fconstant-string-class=Foo" } */
/* { dg-do compile { target *-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-13.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/const-str-13.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-13.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-13.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-fno-constant-cfstrings -fwritable-strings -fconstant-string-class=Foo -mmacosx-version-min=10.4" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-fno-constant-cfstrings -fwritable-strings -fconstant-string-class=Foo" { target arm*-*-darwin* } } */
/* { dg-do run { target *-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
#include <stdlib.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-9.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/const-str-9.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-9.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/const-str-9.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-fnext-runtime -fno-constant-cfstrings" } */
/* APPLE LOCAL ARM radar 5804096 */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/cxx-ivars-3.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
// APPLE LOCAL radar 4842158
// { dg-options "-fnext-runtime -mmacosx-version-min=10.3" }
/* APPLE LOCAL radar 4280641 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/objc-runtime.h>
#include <stdlib.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/debug-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/debug-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/debug-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/debug-1.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* Tesst debug info for virtual base class. */
/* { dg-do compile } */
/* { dg-options "-gstabs+ -gfull" } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* LLVM LOCAL llvm doesn't currently support stabs. */
/* { dg-require-stabs "" } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs-warn-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/defs-warn-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs-warn-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs-warn-1.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-options "-lobjc -Wobjc2" } */
/* { dg-do run } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL ARM objc2 */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/defs.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/defs.mm Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-lobjc" } */
/* { dg-do run } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL ARM objc2 */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/layout-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/layout-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/layout-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/layout-1.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-do compile } */
/* { dg-options "-Wpadded -Wpacked -Wabi" } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-11.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/method-11.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-11.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-11.mm Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fnext-runtime" } */
/* { dg-do compile } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL ARM objc2 */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-type-attribute.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/method-type-attribute.mm?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-type-attribute.mm (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/method-type-attribute.mm Mon Nov 3 02:35:57 2008
@@ -0,0 +1,12 @@
+/* APPLE LOCAL file radar 6261630 */
+/* Test use of trailing attribute in a method return type. */
+/* { dg-options "-fobjc-gc" } */
+/* { dg-do compile { target *-*-darwin* } } */
+
+ at interface INTF
+- (const char * __attribute__((objc_gc(strong))))encoding;
+- (id __strong)encoding1;
+- (const char * __weak)encoding2;
+- (const char ** __strong)encoding3;
+ at end
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-fast-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-1.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -fobjc-direct-dispatch -Wassign-intercept" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-2.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-fast-2.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-2.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-2.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -fobjc-direct-dispatch -Wno-assign-intercept -O2" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-3.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-fast-3.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-3.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-3.mm Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -fobjc-direct-dispatch -Wno-assign-intercept -O2" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-4.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-fast-4.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-4.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fast-4.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
with -O0, so the sibcall case cannot occur. */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-O0 -fobjc-direct-dispatch" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fpret-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-fpret-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fpret-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-fpret-1.mm Mon Nov 3 02:35:57 2008
@@ -1,6 +1,7 @@
/* APPLE LOCAL begin radar 4280641 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* APPLE LOCAL 64 bit default */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
@interface Example : Object
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-1.mm Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* A compile-only test for insertion of write barriers. */
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc -Wassign-intercept" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign -Wassign-intercept" } */
/* { dg-require-effective-target objc_gc } */
#ifndef __OBJC_GC__
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-2.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-2.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-2.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-2.mm Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* A compile-only test for insertion of write barriers. */
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc -Wassign-intercept" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign -Wassign-intercept" } */
/* { dg-require-effective-target objc_gc } */
#include <objc/objc.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-4.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-4.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-4.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-4.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-do run { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -mmacosx-version-min=10.3" } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/objc.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-8.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-8.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-8.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-8.mm Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Do _not_ generate write barriers for global function pointers,
even ones returning 'id'. */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc -Wassign-intercept" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign -Wassign-intercept" } */
/* { dg-require-effective-target objc_gc } */
/* APPLE LOCAL radar 4894756 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-section-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-1.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
with flag of 0 */
/* { dg-do compile } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
@interface INTF
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-2.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-section-2.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-2.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-section-2.mm Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Check that -fobjc-gc-only option produces a 110 flag in objc section. */
/* { dg-options "-fobjc-gc-only" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
@interface INTF
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-weak-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-gc-weak-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-weak-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-gc-weak-1.mm Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* A run-time test for insertion of write barriers for __weak objects. */
/* { dg-do run { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign" } */
/* { dg-require-effective-target objc_gc } */
#include <objc/objc.h>
Added: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-property-enumtype.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-property-enumtype.mm?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-property-enumtype.mm (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-property-enumtype.mm Mon Nov 3 02:35:57 2008
@@ -0,0 +1,62 @@
+/* APPLE LOCAL file radar 6264448 */
+/* Test that property of enum types don't cause error
+ when setter call is generated. */
+/* { dg-do run { target *-*-darwin* } } */
+/* { dg-options "-framework Foundation -Werror" } */
+
+#import <Foundation/Foundation.h>
+
+enum TimeType {
+ TimeTypeZero = 0,
+ TimeTypeOne = 1,
+ TimeTypeTwo = 2
+};
+
+typedef enum TimeType TimeType;
+
+
+ at interface A : NSObject {
+ TimeType tt;
+}
+
+ at property (nonatomic) TimeType tt;
+
+ at end
+
+ at interface B : NSObject {
+ TimeType tt;
+}
+
+ at property (nonatomic) TimeType tt;
+
+ at end
+
+ at implementation A
+
+ at synthesize tt;
+
+ at end
+
+ at implementation B
+
+ at synthesize tt;
+
+ at end
+
+int main (int argc, const char * argv[]) {
+ NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+
+ A* a = [[A alloc] init];
+ B* b = [[B alloc] init];
+
+ a.tt = TimeTypeOne;
+ // failure here:
+ b.tt = a.tt;
+
+ b.tt = [a tt];
+
+ [b setTt: [a tt]];
+
+ [pool drain];
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-stret-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-stret-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-stret-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-stret-1.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
that is memory bound, we still generate objc_msgSend_stret for all platforms. */
/* { dg-do compile { target *-*-darwin* } } */
/* APPLE LOCAL radar 4492976 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
@interface Joiner {
}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-visibility-hidden-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc-visibility-hidden-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-visibility-hidden-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc-visibility-hidden-1.mm Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Test for visibility 'hidden' flag inserted in 32bit objc class's meta-data. */
/* { dg-options "-mmacosx-version-min=10.5" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
__attribute__((visibility("hidden")))
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-1.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc2-protocol-1.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-1.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-1.mm Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* Protocol meta-data for protocol used in @protocol expression must be generated. */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -15,6 +15,6 @@
return (long) @protocol(Proto1);
}
/* LLVM LOCAL begin accept llvm syntax */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
/* { dg-final { scan-assembler-not ".*_OBJC_PROTOCOL_\\\$_Proto2" } } */
-/* LLVM LOCAL end */
\ No newline at end of file
+/* LLVM LOCAL end */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-2.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc2-protocol-2.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-2.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-2.mm Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* Check for generation of protocol meta-data */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -12,6 +12,6 @@
@interface Super <Proto1, Proto2> { id isa; } @end
@implementation Super @end
/* LLVM LOCAL begin llvm syntax */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto2:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto2:" } } */
/* LLVM LOCAL end */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-4.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc2-protocol-4.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-4.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-4.mm Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 5465109 */
+/* APPLE LOCAL file 5465109 - modified for radar 6255913 */
/*
The following test program should emit metadata for _OBJC_PROTOCOL_$_Proto2 and _OBJC_PROTOCOL_$__Proto1.
This root emits both protocols and puts them both in __protocol_list.
@@ -21,6 +21,6 @@
return (long)@protocol(Proto2);
}
/* LLVM LOCAL begin llvm syntax */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto2:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto2:" } } */
/* LLVM LOCAL end */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-5.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc2-protocol-5.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-5.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-5.mm Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -14,4 +14,4 @@
return (long) @protocol(Proto1);
}
/* LLVM LOCAL llvm syntax */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-9.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/objc2-protocol-9.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-9.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/objc2-protocol-9.mm Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* Cechk that both protocols metadata generated for them. */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -19,6 +19,6 @@
@implementation Foo (Category)
@end
/* LLVM LOCAL begin accept llvm syntax */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
-/* { dg-final { scan-assembler "L_.*OBJC_PROTOCOL_\\\$_Proto2:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_.*OBJC_PROTOCOL_\\\$_Proto2:" } } */
/* LLVM LOCAL end */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-missing-comma.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/property-missing-comma.mm?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-missing-comma.mm (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-missing-comma.mm Mon Nov 3 02:35:57 2008
@@ -0,0 +1,16 @@
+/* APPLE LOCAL file radar 6302949 */
+/* { dg-options "-mmacosx-version-min=10.5" { target *-*-darwin* } } */
+/* { dg-do compile } */
+
+ at interface BadPropClass // : NSObject
+{
+ int _awesome;
+}
+
+ at property (readonly) int hello;
+ at property (nonatomic readonly, getter=isAwesome) int _awesome; /* { dg-warning " property attributes must be separated by a comma" } */
+ at property (nonatomic, readonly, getter=isAwesome) int _anew;
+ at property (nonatomic, readonly, getter=isAwesome) int _anew1;
+
+ at end
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-neg-3.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/property-neg-3.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-neg-3.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/property-neg-3.mm Mon Nov 3 02:35:57 2008
@@ -1,8 +1,6 @@
/* APPLE LOCAL file radar 4436866 */
/* Check for proper declaration of @property. */
-/* APPLE LOCAL radar 4899595 */
-/* { dg-options "-fno-objc-new-property -mmacosx-version-min=10.5" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fno-objc-new-property" { target arm*-*-darwin* } } */
+/* { dg-options "-mmacosx-version-min=10.5" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@interface Bar
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/sync-objc-exception.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/sync-objc-exception.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/sync-objc-exception.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/sync-objc-exception.mm Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
*/
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-fobjc-exceptions -Os -Wextra -Werror" } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
struct MyPoint { int x; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-7.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/syntax-error-7.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-7.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-7.mm Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL begin radar 4290840 */
+/* APPLE LOCAL file radar 4290840 - Modified for radar 6271728 */
/* { dg-do compile } */
@interface Foo
@@ -8,7 +8,7 @@
@implementation Foo
-(void)
-(void) someMethod /* { dg-error "expected before .-." } */
+ /* { dg-error "expected" "" { target *-*-* } 10 } */
{
}
@end
-/* APPLE LOCAL end radar 4290840 */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-9.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/syntax-error-9.mm?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-9.mm (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/syntax-error-9.mm Mon Nov 3 02:35:57 2008
@@ -0,0 +1,9 @@
+/* APPLE LOCAL file radar 6271728 */
+/* Check for error reporting of bad method definition. */
+ at interface MyClass
+ at end
+
+
+ at implementation MyClass
+- (void) ni
+ at end /* { dg-error "expected `\{' before \\'end\\'" } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/template-4.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/template-4.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/template-4.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/template-4.mm Mon Nov 3 02:35:57 2008
@@ -6,7 +6,7 @@
/* APPLE LOCAL Radar 5706927 */
/* { dg-do run { target powerpc*-*-darwin* } } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/try-catch-20.mm
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/obj-c%2B%2B.dg/try-catch-20.mm?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/try-catch-20.mm (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/obj-c++.dg/try-catch-20.mm Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
all uncaught exceptions. */
/* { dg-options "-fobjc-exceptions" } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-do run } */
extern "C" void abort (void);
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6255801.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6255801.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6255801.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6255801.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,6 @@
+/* APPLE LOCAL file 6255801 */
+/* { dg-do compile { target *-*-darwin* } } */
+ at interface Foo @end
+ at implementation Foo @end
+/* Any alignment above ".align 3" (=64-bit) is too much. */
+/* { dg-final { scan-assembler-not "\.align\[\t \]+\[4-9\]" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6311054.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6311054.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6311054.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/6311054.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,16 @@
+/* APPLE LOCAL file 6311054 */
+/* { dg-do compile } */
+/* { dg-options { -fPIC -quiet -mfix-and-continue -m64 -mmacosx-version-min=10.5 } } */
+typedef unsigned char uint8_t;
+typedef unsigned int uint32_t;
+static const uint8_t kObfuscationKey[] = {
+ 0x7d, 0x89, 0x52, 0x23, 0xd2, 0xbc, 0xdd, 0xea, 0xa3, 0xb9, 0x1f };
+void obfuscate( void *buffer, uint32_t bufferLength ) {
+ uint8_t *pBuf = (uint8_t *) buffer;
+ const uint8_t *pKey = kObfuscationKey, *eKey = pKey + sizeof( kObfuscationKey );
+ while ( bufferLength-- ) {
+ *pBuf = *pBuf ^ *pKey;
+ ++pKey;
+ if ( pKey == eKey ) pKey = kObfuscationKey;
+ }
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-3.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-3.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-3.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-3.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-lobjc -Wpadded" } */
/* { dg-do run } */
/* APPLE LOCAL begin objc2 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
/* APPLE LOCAL end objc2 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-5.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-5.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-5.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/bitfield-5.m Mon Nov 3 02:35:57 2008
@@ -7,7 +7,7 @@
/* { dg-options "-Wpadded" } */
/* { dg-do run } */
/* APPLE LOCAL begin objc2 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
/* APPLE LOCAL end objc2 */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/cond-expr-warn.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/cond-expr-warn.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/cond-expr-warn.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/cond-expr-warn.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,10 @@
+/* APPLE LOCAL file radar 6231433 */
+/* { dg-do compile } */
+
+ at interface NSKey @end
+ at interface UpdatesList @end
+
+void foo (int i, NSKey *NSKeyValueCoding_NullValue, UpdatesList *nukedUpdatesList)
+{
+ i ? NSKeyValueCoding_NullValue : nukedUpdatesList; /* { dg-warning "conditional expression" } */
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-cfstring-4.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-cfstring-4.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-cfstring-4.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-cfstring-4.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fconstant-cfstrings" } */
/* { dg-do compile { target *-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
typedef const struct __CFString * CFStringRef;
static CFStringRef appKey = (CFStringRef) @"com.apple.soundpref";
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-10.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-10.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-10.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-10.m Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* APPLE LOCAL file 4149909 */
/* { dg-options "-fnext-runtime -fno-constant-cfstrings" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-11.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-11.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-11.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-11.m Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* APPLE LOCAL file 4149909 */
/* { dg-options "-fnext-runtime -fno-constant-cfstrings -fconstant-string-class=XStr" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-12.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-12.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-12.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-12.m Mon Nov 3 02:35:57 2008
@@ -1,7 +1,7 @@
/* { dg-options "-Wall -funit-at-a-time -fgnu-runtime" } */
/* { dg-do compile } */
/* APPLE LOCAL objc2 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* PR objc/27438, make sure that the decl produced by the front-end
does not cause a warning to be produced. */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-13.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-13.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-13.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-13.m Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
/* { dg-options "-fno-constant-cfstrings -fwritable-strings -fconstant-string-class=Foo -mmacosx-version-min=10.4" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-fno-constant-cfstrings -fwritable-strings -fconstant-string-class=Foo" { target arm*-*-darwin* } } */
/* { dg-do run { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
#include <stdlib.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-6.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-6.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-6.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/const-str-6.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fno-constant-cfstrings -fconstant-string-class=MyConstantString" } */
/* { dg-do compile } */
/* APPLE LOCAL objc2 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
@interface MyBase {
char p;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs-warn-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs-warn-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs-warn-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs-warn-1.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Issue warning wherevr @defs is used. */
/* { dg-options "-lobjc -Wobjc2" } */
/* { dg-do run { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/objc.h>
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/defs.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-lobjc" } */
/* { dg-do run } */
/* APPLE LOCAL begin objc2 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
/* APPLE LOCAL end objc2 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/encode-7a.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/encode-7a.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/encode-7a.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/encode-7a.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-do run { target *-*-darwin* } } */
/* { dg-options "-fnext-runtime" } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/image-info.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/image-info.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/image-info.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/image-info.m Mon Nov 3 02:35:57 2008
@@ -6,7 +6,7 @@
/* APPLE LOCAL ARM objc2 */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#ifndef __NEXT_RUNTIME__
#error Feature not currently supported by the GNU runtime
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/layout-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/layout-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/layout-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/layout-1.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-do compile } */
/* { dg-options "-Wpadded -Wpacked" } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/method-4.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/method-4.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/method-4.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/method-4.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* { dg-options "-fnext-runtime" } */
/* { dg-do compile } */
/* APPLE LOCAL begin objc2 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
/* APPLE LOCAL end objc2 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/next-runtime-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/next-runtime-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/next-runtime-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/next-runtime-1.m Mon Nov 3 02:35:57 2008
@@ -7,7 +7,7 @@
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-fnext-runtime" } */
/* APPLE LOCAL 64-bit 4492976 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-dir-dispatch.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-dir-dispatch.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-dir-dispatch.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-dir-dispatch.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
-mmacosx-version-min=10.4. */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-mmacosx-version-min=10.4" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-1.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -fobjc-direct-dispatch -Wassign-intercept" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-2.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -fobjc-direct-dispatch -Wno-assign-intercept -O2" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-3.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-3.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-3.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-3.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* { dg-options "-fnext-runtime -fobjc-gc -fobjc-direct-dispatch -Wno-assign-intercept -O2" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/Object.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-4.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-4.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-4.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fast-4.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* APPLE LOCAL ObjC direct dispatch */
/* { dg-options "-O0 -fobjc-direct-dispatch -fnext-runtime" } */
-/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* Radar 4015820 */
/* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-1.m Mon Nov 3 02:35:57 2008
@@ -1,6 +1,6 @@
/* APPLE LOCAL begin radar 4280641 */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/Object.h>
@interface Example : Object
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-fpret-2.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
*/
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" } */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
@interface Test @end
@implementation Test
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-1.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* A compile-only test for insertion of write barriers. */
/* Developed by Ziemowit Laski <zlaski at apple.com> */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc -Wassign-intercept" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign -Wassign-intercept" } */
/* { dg-require-effective-target objc_gc } */
#ifndef __OBJC_GC__
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-2.m Mon Nov 3 02:35:57 2008
@@ -2,9 +2,9 @@
/* A run-time test for insertion of write barriers. */
/* { dg-do run { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc" } */
-/* { dg-options "-fnext-runtime -fobjc-gc -mmacosx-version-min=10.3" { target powerpc*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign -mmacosx-version-min=10.3" { target powerpc*-*-darwin* } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
#include <objc/objc.h>
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-7.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-7.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-7.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-7.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Do _not_ generate write barriers for global function pointers,
even ones returning 'id'. */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc -Wassign-intercept" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign -Wassign-intercept" } */
/* { dg-require-effective-target objc_gc } */
/* APPLE LOCAL radar 4894756 */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-lvalue-cast-warn.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-lvalue-cast-warn.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-lvalue-cast-warn.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-lvalue-cast-warn.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,11 @@
+/* APPLE LOCAL file radar 6269491 */
+/* Test that lvalue cast with -fobjc-gc also results in a warning. */
+/* { dg-options "-fobjc-gc" } */
+
+ at interface I @end
+
+void foo(I* pI)
+{
+ (id) pI = 0; /* { dg-warning "target of assignment not really an lvalue" } */
+}
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-1.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
with flag of 0 */
/* { dg-do compile } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
@interface INTF
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-section-2.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Check that -fobjc-gc-only option produces a 110 flag in objc section. */
/* { dg-options "-fobjc-gc-only" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-require-effective-target objc_gc } */
@interface INTF
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-weak-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-weak-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-weak-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-gc-weak-1.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* A run-time test for insertion of write barriers for __weak objects. */
/* { dg-do run { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-options "-fnext-runtime -fobjc-gc" } */
+/* { dg-options "-fnext-runtime -fobjc-gc -Wno-non-lvalue-assign" } */
/* { dg-require-effective-target objc_gc } */
#include <objc/objc.h>
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-property-enumtype.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-property-enumtype.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-property-enumtype.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-property-enumtype.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,62 @@
+/* APPLE LOCAL file radar 6264448 */
+/* Test that property of enum types don't cause error
+ when setter call is generated. */
+/* { dg-do run { target *-*-darwin* } } */
+/* { dg-options "-framework Foundation -Werror" } */
+
+#import <Foundation/Foundation.h>
+
+enum TimeType {
+ TimeTypeZero = 0,
+ TimeTypeOne = 1,
+ TimeTypeTwo = 2
+};
+
+typedef enum TimeType TimeType;
+
+
+ at interface A : NSObject {
+ TimeType tt;
+}
+
+ at property (nonatomic) TimeType tt;
+
+ at end
+
+ at interface B : NSObject {
+ TimeType tt;
+}
+
+ at property (nonatomic) TimeType tt;
+
+ at end
+
+ at implementation A
+
+ at synthesize tt;
+
+ at end
+
+ at implementation B
+
+ at synthesize tt;
+
+ at end
+
+int main (int argc, const char * argv[]) {
+ NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+
+ A* a = [[A alloc] init];
+ B* b = [[B alloc] init];
+
+ a.tt = TimeTypeOne;
+ // failure here:
+ b.tt = a.tt;
+
+ b.tt = [a tt];
+
+ [b setTt: [a tt]];
+
+ [pool drain];
+ return 0;
+}
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-visibility-hidden-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-visibility-hidden-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-visibility-hidden-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc-visibility-hidden-1.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Test for visibility 'hidden' flag inserted in 32bit objc class's meta-data. */
/* { dg-options "-mmacosx-version-min=10.5" } */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
__attribute__((visibility("hidden")))
@interface Foo {
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-alignment-test-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-alignment-test-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-alignment-test-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-alignment-test-1.m Mon Nov 3 02:35:57 2008
@@ -2,7 +2,7 @@
/* Test that alignment of __class_list sections, among others, are at their 'natural'
alignment on x86. */
/* { dg-do compile { target i?86-*-darwin* } } */
-/* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" } */
@interface c1 @end
@@ -39,4 +39,4 @@
/* LLVM LOCAL begin accept llvm syntax */
/* { dg-final { scan-assembler "\t.align( |\t)2\nL_OBJC_LABEL_CLASS_\\\$:" } } */
/* { dg-final { scan-assembler "\t.align( |\t)2\nL_OBJC_LABEL_NONLAZY_CLASS_\\\$:" } } */
-/* LLVM LOCAL end */
\ No newline at end of file
+/* LLVM LOCAL end */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-newmetadata-sections.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-newmetadata-sections.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-newmetadata-sections.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-newmetadata-sections.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,12 @@
+/* APPLE LOCAL file radar 6255595 */
+/* Check for generation of new sections for objc2 meta-data. */
+/* { dg-options "-fobjc-abi-version=2 -mmacosx-version-min=10.6" } */
+/* { dg-do compile */
+ at protocol PROTO
+ at end
+
+ at interface INTF <PROTO> @end
+
+ at implementation INTF @end
+/* { dg-final { scan-assembler ".section __DATA, __objc_const" } } */
+/* { dg-final { scan-assembler ".section __DATA, __objc_data" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-property-typedefprotocol.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-property-typedefprotocol.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-property-typedefprotocol.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-property-typedefprotocol.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,10 @@
+/* APPLE LOCAL file radar 6267049 */
+typedef int MyTypedef;
+
+ at interface MyClass
+
+ at property MyTypedef <Gobbledygook> myProperty; /* { dg-error "qualified type is not a valid object" } */
+ /* { dg-error "cannot find protocol declaration for \\'Gobbledygook\\'" "" { target *-*-* } 6 } */
+
+ at end
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-1.m Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* Protocol meta-data for protocol used in @protocol expression must be generated. */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -14,5 +14,5 @@
int main() {
return (long) @protocol(Proto1);
}
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto1:" } } */
/* { dg-final { scan-assembler-not "_OBJC_PROTOCOL_\\\$_Proto2" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-2.m Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* Check for generation of protocol meta-data */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -11,5 +11,5 @@
@interface Super <Proto1, Proto2> { id isa; } @end
@implementation Super @end
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto1:" } } */
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto2:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto2:" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-4.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-4.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-4.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-4.m Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 5465109 */
+/* APPLE LOCAL file 5465109 - modified for radar 6255913 */
/*
The following test program should emit metadata for _OBJC_PROTOCOL_$_Proto2 and _OBJC_PROTOCOL_$__Proto1.
This root emits both protocols and puts them both in __protocol_list.
@@ -20,5 +20,5 @@
{
return (long)@protocol(Proto2);
}
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto1:" } } */
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto2:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto2:" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-5.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-5.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-5.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-5.m Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -13,4 +13,4 @@
int main() {
return (long) @protocol(Proto1);
}
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto1:" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-9.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-9.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-9.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-protocol-9.m Mon Nov 3 02:35:57 2008
@@ -1,4 +1,4 @@
-/* APPLE LOCAL file 4695109 */
+/* APPLE LOCAL file 4695109 - modified for radar 6255913 */
/* Cechk that both protocols metadata generated for them. */
/* { dg-options "-mmacosx-version-min=10.5 -fobjc-abi-version=2" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile { target *-*-darwin* } } */
@@ -18,5 +18,5 @@
@implementation Foo (Category)
@end
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto1:" } } */
-/* { dg-final { scan-assembler "L_OBJC_PROTOCOL_\\\$_Proto2:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto1:" } } */
+/* { dg-final { scan-assembler "l_OBJC_PROTOCOL_\\\$_Proto2:" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-sendsuper_msg.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-sendsuper_msg.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-sendsuper_msg.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/objc2-sendsuper_msg.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,14 @@
+/* APPLE LOCAL file radar 6252174 */
+/* { dg-options "-m64 -mmacosx-version-min=10.6" } */
+/* { dg-do compile { target *-*-darwin* } } */
+
+ at interface NSObject
+-method;
+ at end
+
+ at interface Sub : NSObject @end
+
+ at implementation Sub
+-method { [super method]; }
+ at end
+/* { dg-final { scan-assembler-not ".section __DATA, __objc_msgrefs, coalesced\n\t.align 4\n\tl_objc_msgSendSuper2_fixup_method" } } */
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/property-missing-comma.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/property-missing-comma.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/property-missing-comma.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/property-missing-comma.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,19 @@
+/* APPLE LOCAL file radar 6302949 */
+/* { dg-options "-mmacosx-version-min=10.5" { target *-*-darwin* } } */
+/* { dg-do compile } */
+
+ at interface BadPropClass // : NSObject
+{
+ int _awesome;
+}
+
+ at property (readonly) int hello;
+ at property (nonatomic readonly /* { dg-warning " property attributes must be separated by a comma" } */
+ getter=isAwesome) int _awesome; /* { dg-warning " property attributes must be separated by a comma" } */
+ at property (nonatomic, readonly,
+ getter=isAwesome) int _anew;
+ at property (nonatomic, readonly,
+ getter=isAwesome) int _anew1;
+
+ at end
+
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/selector-3.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/selector-3.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/selector-3.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/selector-3.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-options "-Wselector -fgnu-runtime" } */
/* { dg-do compile } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
typedef struct objc_object { struct objc_class *class_pointer; } *id;
typedef const struct objc_selector *SEL;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/special/unclaimed-category-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/special/unclaimed-category-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/special/unclaimed-category-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/special/unclaimed-category-1.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
#include <objc/objc-api.h>
#include <objc/Object.h>
/* APPLE LOCAL radar file 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
extern void abort (void);
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/stret-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/stret-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/stret-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/stret-2.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* Contributed by Ziemowit Laski <zlaski at apple.com>. */
/* { dg-do compile { target *-*-darwin* } } */
/* APPLE LOCAL radar 4492976 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL radar 4894756 */
#include "../objc/execute/Object2.h"
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/symtab-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/symtab-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/symtab-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/symtab-1.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-options "-fnext-runtime" } */
/* { dg-do compile { target *-*-darwin* } } */
/* APPLE LOCAL radar 4492976 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* APPLE LOCAL ARM not available on arm-darwin targets */
/* { dg-skip-if "" { arm*-*-darwin* } { "*" } { "" } } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/sync-objc-exception.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/sync-objc-exception.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/sync-objc-exception.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/sync-objc-exception.m Mon Nov 3 02:35:57 2008
@@ -5,7 +5,7 @@
*/
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-options "-fobjc-exceptions -Os -Wextra -Werror" } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
struct MyPoint { int x; };
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-15.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-15.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-15.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-15.m Mon Nov 3 02:35:57 2008
@@ -6,7 +6,7 @@
/* { dg-do compile { target powerpc*-*-darwin* } } */
/* APPLE LOCAL begin radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include "../objc/execute/Object2.h"
/* APPLE LOCAL end radar 4894756 */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-17.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-17.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-17.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/try-catch-17.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
all uncaught exceptions. */
/* { dg-options "-fobjc-exceptions" } */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
/* { dg-do run } */
#include "../objc/execute/Object2.h"
Added: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/unimplemented-anon-category.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/unimplemented-anon-category.m?rev=58601&view=auto
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/unimplemented-anon-category.m (added)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/unimplemented-anon-category.m Mon Nov 3 02:35:57 2008
@@ -0,0 +1,18 @@
+/* APPLE LOCAL file radar 6017984 */
+/* Warn if @implementation does not implement methods declared
+ in anonymous category's protocol list. */
+/* { dg-do compile { target *-*-darwin* } } */
+
+ at protocol Bar
+- (void) baz;
+ at end
+
+ at interface Foo
+ at end
+
+ at interface Foo () <Bar>
+ at end
+
+ at implementation Foo
+ at end /* { dg-warning "incomplete implementation of class 'Foo'" } */
+ /* { dg-warning "method definition for '-baz' not found" "" { target *-*-* } 17 } */
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/volatile-1.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/volatile-1.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/volatile-1.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/volatile-1.m Mon Nov 3 02:35:57 2008
@@ -3,7 +3,7 @@
/* { dg-options "-O2" } */
/* Contributed by Ziemowit Laski <zlaski at apple.com> */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
@interface Test
-(void) test2: (volatile int) a;
Modified: llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/zero-link-2.m
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/zero-link-2.m?rev=58601&r1=58600&r2=58601&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/zero-link-2.m (original)
+++ llvm-gcc-4.2/trunk/gcc/testsuite/objc.dg/zero-link-2.m Mon Nov 3 02:35:57 2008
@@ -4,7 +4,7 @@
/* APPLE LOCAL ARM objc2 */
/* { dg-do compile { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* APPLE LOCAL radar 4894756 */
-/* { dg-skip-if "" { *-*-darwin* } { "-m64" } { "" } } */
+/* { dg-require-effective-target ilp32 } */
#include <objc/objc.h>
#include <objc/Object.h>
More information about the llvm-commits
mailing list