summaryrefslogtreecommitdiffstats
path: root/llvm/lib
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
commit4ad4bcdc2db2947f0438bbfe9dc4a7e3b36e96d7 (patch)
tree6f4c5cb444a0f154a5e9e42b5a33a84236c56289 /llvm/lib
parent91549cef78f86e9c864fa52c03b82ef4fd1f5eb5 (diff)
downloadbcm5719-llvm-4ad4bcdc2db2947f0438bbfe9dc4a7e3b36e96d7.tar.gz
bcm5719-llvm-4ad4bcdc2db2947f0438bbfe9dc4a7e3b36e96d7.zip
Add TODO list for MSIL backend
llvm-svn: 35244
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/MSIL/README.TXT51
1 files changed, 51 insertions, 0 deletions
diff --git a/llvm/lib/Target/MSIL/README.TXT b/llvm/lib/Target/MSIL/README.TXT
new file mode 100644
index 00000000000..34c7f1d8386
--- /dev/null
+++ b/llvm/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.
+
+
+
OpenPOWER on IntegriCloud