[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dotgnu-pnet-commits] pnet ChangeLog codegen/cg_decls.tc dumpasm/dump...
From: |
Klaus Treichel |
Subject: |
[dotgnu-pnet-commits] pnet ChangeLog codegen/cg_decls.tc dumpasm/dump... |
Date: |
Mon, 16 Mar 2009 19:50:31 +0000 |
CVSROOT: /cvsroot/dotgnu-pnet
Module name: pnet
Changes by: Klaus Treichel <ktreichel> 09/03/16 19:50:31
Modified files:
. : ChangeLog
codegen : cg_decls.tc
dumpasm : dump_flags.c dump_type.c
ilalink : link_image.c
ilasm : ilasm_grammar.y ilasm_scanner.l
include : il_meta.h il_program.h
Log message:
Add support for the assembly flag retargetable and constants attached to
properties.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnet/ChangeLog?cvsroot=dotgnu-pnet&r1=1.3606&r2=1.3607
http://cvs.savannah.gnu.org/viewcvs/pnet/codegen/cg_decls.tc?cvsroot=dotgnu-pnet&r1=1.61&r2=1.62
http://cvs.savannah.gnu.org/viewcvs/pnet/dumpasm/dump_flags.c?cvsroot=dotgnu-pnet&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/pnet/dumpasm/dump_type.c?cvsroot=dotgnu-pnet&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/pnet/ilalink/link_image.c?cvsroot=dotgnu-pnet&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/pnet/ilasm/ilasm_grammar.y?cvsroot=dotgnu-pnet&r1=1.53&r2=1.54
http://cvs.savannah.gnu.org/viewcvs/pnet/ilasm/ilasm_scanner.l?cvsroot=dotgnu-pnet&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/pnet/include/il_meta.h?cvsroot=dotgnu-pnet&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/pnet/include/il_program.h?cvsroot=dotgnu-pnet&r1=1.65&r2=1.66
Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ChangeLog,v
retrieving revision 1.3606
retrieving revision 1.3607
diff -u -b -r1.3606 -r1.3607
--- ChangeLog 22 Feb 2009 15:06:49 -0000 1.3606
+++ ChangeLog 16 Mar 2009 19:50:18 -0000 1.3607
@@ -1,4 +1,26 @@
-2009-02-22 Klaus Treichek <address@hidden>
+2009-03-16 Klaus Treichel <address@hidden>
+
+ * codegen/cg_decls.tc (ILNode_GenDiscard(ILNode_PropertyDeclaration)):
+ Dump attached constant if present.
+
+ * dumpasm/dump_flags.c (ILAssemblyFlags): Add the 2.0 ECMA flag
+ retargetable.
+
+ * dumpasm/dump_type.c (DumpNativeType): Dump a native array in the
+ format type[int32 + int32] now instead of the old format.
+
+ * ilalink/link_image.c (ProcessImage): Handle the 2.0 assembly flag
+ retargetable.
+
+ * ilasm/ilasm_grammar.y: Handle constants attached to properties.
+
+ * ilasm/ilasm_scanner.l: Add the 2.0 keyword retargetable.
+
+ * include/il_meta.h: Define IL_META_ASSEM_RETARGETABLE.
+
+ * include/il_program.h: Add macro ILAssembly_Retargetable.
+
+2009-02-22 Klaus Treichel <address@hidden>
* configure.in: Add checking for x86_64-*-linux* when checking which
thread library to use if not specified.
Index: codegen/cg_decls.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_decls.tc,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -b -r1.61 -r1.62
--- codegen/cg_decls.tc 23 Dec 2008 13:31:14 -0000 1.61
+++ codegen/cg_decls.tc 16 Mar 2009 19:50:25 -0000 1.62
@@ -1005,6 +1005,7 @@
ILProperty_Signature(node->propertyInfo),
IL_DUMP_QUOTE_NAMES, 0,
ILProperty_Name(node->propertyInfo), 0);
+ ILDumpConstant(outstream, (ILProgramItem *)node->propertyInfo,
1);
fputs("\n{\n", outstream);
if(info->debugFlag && info->asmOutput)
{
Index: dumpasm/dump_flags.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/dumpasm/dump_flags.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- dumpasm/dump_flags.c 6 May 2003 09:53:20 -0000 1.12
+++ dumpasm/dump_flags.c 16 Mar 2009 19:50:27 -0000 1.13
@@ -189,7 +189,8 @@
ILFlagInfo const ILPropertyDefinitionFlags[] = {
{"specialname", IL_META_PROPDEF_SPECIAL_NAME, 0},
{"rtspecialname", IL_META_PROPDEF_RT_SPECIAL_NAME, 0},
- {0, IL_META_PROPDEF_RT_SPECIAL_NAME, 0xFFFFFDFF},
+ {0, IL_META_PROPDEF_RT_SPECIAL_NAME |
+ IL_META_PROPDEF_HAS_DEFAULT, 0xFFFFFDFF},
};
/*
@@ -349,9 +350,10 @@
IL_META_ASSEM_COMPATIBILITY_MASK},
{"nomachine", IL_META_ASSEM_NON_SIDE_BY_SIDE_MACHINE,
IL_META_ASSEM_COMPATIBILITY_MASK},
+ {"retargetable", IL_META_ASSEM_RETARGETABLE, 0},
{"enablejittracking", IL_META_ASSEM_ENABLE_JIT_TRACKING, 0},
{"disablejitoptimizer", IL_META_ASSEM_DISABLE_JIT_OPTIMIZER, 0},
- {0, 0, 0xFFFF3F8E},
+ {0, 0, 0xFFFF3E8E},
};
/*
Index: dumpasm/dump_type.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/dumpasm/dump_type.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- dumpasm/dump_type.c 12 Nov 2007 19:06:47 -0000 1.18
+++ dumpasm/dump_type.c 16 Mar 2009 19:50:30 -0000 1.19
@@ -1350,33 +1350,18 @@
DumpNativeType(stream, reader, flags);
putc('[', stream);
value = ILMetaUncompressData(reader);
- if(value)
- {
- fprintf(stream, ".size .param = %lu", value);
- value = ILMetaUncompressData(reader);
+ /* Skip the multiplier as it's not available in the
grammar */
value2 = ILMetaUncompressData(reader);
- if(value != 1)
- {
- fprintf(stream, " * %lu]", value);
- }
- else
- {
- putc(']', stream);
- }
- }
- else
- {
- value = ILMetaUncompressData(reader);
value2 = ILMetaUncompressData(reader);
if(value2 != 0)
{
- fprintf(stream, "%lu]", value2);
+ fprintf(stream, "%lu", value2);
}
- else
+ if(value)
{
- putc(']', stream);
- }
+ fprintf(stream, " + %lu", value);
}
+ putc(']', stream);
}
break;
Index: ilalink/link_image.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ilalink/link_image.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- ilalink/link_image.c 8 Jul 2004 00:44:48 -0000 1.14
+++ ilalink/link_image.c 16 Mar 2009 19:50:30 -0000 1.15
@@ -163,6 +163,13 @@
compat);
}
+ /* Copy the retargetable flag */
+ if(ILAssembly_Retargetable(assem))
+ {
+ ILAssemblySetAttrs(thisAssem,
IL_META_ASSEM_RETARGETABLE,
+
IL_META_ASSEM_RETARGETABLE);
+ }
+
/* Copy the JIT flags */
if(ILAssembly_EnableJITTracking(assem))
{
Index: ilasm/ilasm_grammar.y
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ilasm/ilasm_grammar.y,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -b -r1.53 -r1.54
--- ilasm/ilasm_grammar.y 22 Feb 2009 15:06:51 -0000 1.53
+++ ilasm/ilasm_grammar.y 16 Mar 2009 19:50:30 -0000 1.54
@@ -982,6 +982,7 @@
%token K_REQREFUSE "`reqrefuse'"
%token K_REQSECOBJ "`reqsecobj'"
%token K_REQUEST "`request'"
+%token K_RETARGETABLE "`retargetable'"
%token K_RETVAL "`retval'"
%token K_RTSPECIALNAME "`rtspecialname'"
%token K_RUNTIME "`runtime'"
@@ -2870,7 +2871,7 @@
PropertyHeading
: D_PROPERTY PropertyAttributes CallingConventions Type Identifier
- '(' OptSignatureArguments ')' {
+ '(' OptSignatureArguments ')' InitOption {
ILType *sig = CreatePropertySig($3, $4,
$7.paramFirst);
ILProperty *property;
property = ILPropertyCreate(ILAsmClass, 0,
$5.string,
@@ -2879,6 +2880,24 @@
{
ILAsmOutOfMemory();
}
+ if($9.type != IL_META_ELEMTYPE_VOID)
+ {
+ /* Attach a constant to the property */
+ ILConstant *constant;
+
+ constant = ILConstantCreate(ILAsmImage,
0,
+
ILToProgramItem(property),
+
$9.type);
+ if(!constant)
+ {
+ ILAsmOutOfMemory();
+ }
+ if(!ILConstantSetValue(constant,
$9.valueBlob.string,
+
$9.valueBlob.len))
+ {
+ ILAsmOutOfMemory();
+ }
+ }
ILAsmBuildPushScope(property);
}
;
@@ -3728,6 +3747,7 @@
| K_NOAPPDOMAIN { $$ =
IL_META_ASSEM_NON_SIDE_BY_SIDE_APP_DOMAIN; }
| K_NOPROCESS { $$ =
IL_META_ASSEM_NON_SIDE_BY_SIDE_PROCESS; }
| K_NOMACHINE { $$ =
IL_META_ASSEM_NON_SIDE_BY_SIDE_MACHINE; }
+ | K_RETARGETABLE { $$ = IL_META_ASSEM_RETARGETABLE; }
| K_ENABLEJITTRACKING { $$ = IL_META_ASSEM_ENABLE_JIT_TRACKING; }
| K_DISABLEJITOPTIMIZER { $$ = IL_META_ASSEM_DISABLE_JIT_OPTIMIZER; }
;
Index: ilasm/ilasm_scanner.l
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ilasm/ilasm_scanner.l,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -b -r1.18 -r1.19
--- ilasm/ilasm_scanner.l 26 Jul 2007 19:46:57 -0000 1.18
+++ ilasm/ilasm_scanner.l 16 Mar 2009 19:50:30 -0000 1.19
@@ -258,6 +258,7 @@
<INITIAL,JAVAMODE>"noappdomain" { return K_NOAPPDOMAIN;
}
<INITIAL,JAVAMODE>"noprocess" { return K_NOPROCESS; }
<INITIAL,JAVAMODE>"nomachine" { return K_NOMACHINE; }
+<INITIAL,JAVAMODE>"retargetable" { return K_RETARGETABLE; }
<INITIAL,JAVAMODE>"extern" { return K_EXTERN; }
<INITIAL,JAVAMODE>"instance" { return K_INSTANCE; }
<INITIAL,JAVAMODE>"explicit" { return K_EXPLICIT; }
Index: include/il_meta.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/include/il_meta.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- include/il_meta.h 9 Nov 2008 15:56:26 -0000 1.14
+++ include/il_meta.h 16 Mar 2009 19:50:30 -0000 1.15
@@ -278,6 +278,7 @@
#define IL_META_ASSEM_NON_SIDE_BY_SIDE_APP_DOMAIN 0x0010
#define IL_META_ASSEM_NON_SIDE_BY_SIDE_PROCESS 0x0020
#define IL_META_ASSEM_NON_SIDE_BY_SIDE_MACHINE 0x0030
+#define IL_META_ASSEM_RETARGETABLE 0x0100
#define IL_META_ASSEM_ENABLE_JIT_TRACKING 0x8000
#define IL_META_ASSEM_DISABLE_JIT_OPTIMIZER 0x4000
Index: include/il_program.h
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/include/il_program.h,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -b -r1.65 -r1.66
--- include/il_program.h 26 Nov 2008 20:15:28 -0000 1.65
+++ include/il_program.h 16 Mar 2009 19:50:30 -0000 1.66
@@ -489,6 +489,8 @@
#define ILAssembly_IsNotMachineCompatible(assem) \
((ILAssemblyGetAttrs((assem)) & IL_META_ASSEM_COMPATIBILITY_MASK) \
== IL_META_ASSEM_NON_SIDE_BY_SIDE_MACHINE)
+#define ILAssembly_Retargetable(assem) \
+ ((ILAssemblyGetAttrs((assem)) & IL_META_ASSEM_RETARGETABLE) != 0)
#define ILAssembly_EnableJITTracking(assem) \
((ILAssemblyGetAttrs((assem)) & IL_META_ASSEM_ENABLE_JIT_TRACKING) != 0)
#define ILAssembly_DisableJITOptimizer(assem) \
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [dotgnu-pnet-commits] pnet ChangeLog codegen/cg_decls.tc dumpasm/dump...,
Klaus Treichel <=