Author: yug
Date: 2011-11-19 09:27:08 -0500 (Sat, 19 Nov 2011)
New Revision: 3816
Modified:
trunk/osprey/be/cg/cgemit.cxx
Log:
fix bug920. wrong handling of modifier '%P'.
Code Review: Sun Chan and David Coakley.
Modified: trunk/osprey/be/cg/cgemit.cxx
===================================================================
--- trunk/osprey/be/cg/cgemit.cxx 2011-11-19 14:20:17 UTC (rev 3815)
+++ trunk/osprey/be/cg/cgemit.cxx 2011-11-19 14:27:08 UTC (rev 3816)
@@ -3526,13 +3526,19 @@
asm_string = Replace_Substring(asm_string, replace, name);
*name = tmp;
}
- if (strstr(asm_string, "%P")) {
- char replace[5];
- sprintf(replace, "%%P%d", position);
- // OSP_323, with "%P", we ignore the first character '$'
+ }
+
+ /* fix open64.net bug 920 */
+ if (strstr(asm_string, "%P")) {
+ char replace[5];
+ sprintf(replace, "%%P%d", position);
+ // OSP_323, with "%P", we ignore the first character '$'
+ if (*name == '$')
asm_string = Replace_Substring(asm_string, replace, name+1);
- }
+ else
+ asm_string = Replace_Substring(asm_string, replace, name);
}
+
// Follow the zero dialect_number implementation as in
// gcc/final.c:output_asm_insn and handle {, } and | operators
if (strchr(asm_string, '{')) {
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Open64-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel