aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2007-03-21 21:48:59 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2007-03-21 21:48:59 +0000
commit3070cd7e80817a72dd7873b35ed32159bc52568b (patch)
tree45386bc92d4657d413ae5844ba5fcac4499270a7
parentaf2d3793c2c16ad4069d18b1ec7b3fa16fdd2d97 (diff)
Add TODO list for MSIL backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35244 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/MSIL/README.TXT51
1 files changed, 51 insertions, 0 deletions
diff --git a/lib/Target/MSIL/README.TXT b/lib/Target/MSIL/README.TXT
new file mode 100644
index 0000000000..34c7f1d838
--- /dev/null
+++ b/lib/Target/MSIL/README.TXT
@@ -0,0 +1,51 @@
+//===---------------------------------------------------------------------===//
+
+Vector instructions support.
+
+ShuffleVector
+ExtractElement
+InsertElement
+
+//===---------------------------------------------------------------------===//
+
+Add "OpaqueType" type.
+
+//===---------------------------------------------------------------------===//
+
+Variable argument functions support, "VAArg" instruction and some intrinsics.
+CLI instruction "arglist" can get argument list descriptor for current function
+that can be passed to other functions.
+
+ va_arg = Function "System.ArgIterator::GetNextArg()"
+ va_list = Class "System.ArgIterator"
+ va_start = Instruction "arglist"
+ va_end = Do nothing
+
+//===---------------------------------------------------------------------===//
+
+If possible get used types inside of "MSILWriter" class, do not pass trougth
+"MSILModule" class.
+
+ getAnalysis<FindUsedTypes>().getTypes()
+
+//===---------------------------------------------------------------------===//
+
+"switch" instruction emulation with CLI "switch" instruction.
+
+//===---------------------------------------------------------------------===//
+
+Write linker for external function, because function export need to know
+dynamic library where function located.
+
+.method static hidebysig pinvokeimpl("msvcrt.dll" cdecl)
+ void free(void*) preservesig {}
+
+//===---------------------------------------------------------------------===//
+
+DLLImport'ed variables support with the help of win32 envoronment.
+
+ "LoadLibrary" - to load dynamic library into address space.
+ "GetProcAddress" - to recive variable address by name.
+
+
+