Hi,

Can gatekeeper help to review this patch? This is a fix for bug 627 
(https://bugs.open64.net/show_bug.cgi?id=627), 3 tests in gcc regression test 
suite failed due to r3327 check-in.

I attached the diff file and those 3 test cases.

This bug is caused by DECL_ASSEMBLER_NAME macro will set assembler_name if it's 
null. And later in maybe_apply_renaming_pragma function, open64 will check 
whether DECL_ASSEMBLER_NAME is already set or not. If we had set this name, it 
will give a warning instead of change it.

This fix will try to not generate assembler_name, so the name can be generated 
later in maybe_apply_renaming_pragma function.

Regards,
Roger
// Test whether alternate 'asm' name is applied correctly to
// builtin in global namespace

// { dg-do compile }
// { dg-options "" }
// { dg-final { scan-assembler "fancy_printf" } }

extern "C" int printf(const char*, ...) __asm("_fancy_printf");

void foo() { printf("abc"); }
// PR c++/18514
// Test whether alternate 'asm' name is applied correctly to
// builtin imported into namespace std.

// { dg-do compile }
// { dg-options "" }
// { dg-final { scan-assembler "fancy_printf" } }

extern "C" int printf(const char*, ...) __asm("_fancy_printf");

namespace std { using ::printf; }

namespace std { void foo() { printf("abc"); } }
// PR c++/19044
// Verify that alternate asm name for builtin named "foo" also gets
// applied to its sibling "__builtin_foo".

// { dg-do compile }
// { dg-final { scan-assembler "fancy_sin" } }

extern "C" double sin(double) __asm("_fancy_sin");

double foo(double x) { return __builtin_sin(x); }

Attachment: 627.diff
Description: 627.diff

------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to