diff options
author | Anton Korobeynikov <asl@math.spbu.ru> | 2007-03-21 21:48:59 +0000 |
---|---|---|
committer | Anton Korobeynikov <asl@math.spbu.ru> | 2007-03-21 21:48:59 +0000 |
commit | 3070cd7e80817a72dd7873b35ed32159bc52568b (patch) | |
tree | 45386bc92d4657d413ae5844ba5fcac4499270a7 | |
parent | af2d3793c2c16ad4069d18b1ec7b3fa16fdd2d97 (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.TXT | 51 |
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. + + + |