llvm-project/llvm/lib/Target/MSIL
Anton Korobeynikov fb80151c42 Removed tabs everywhere except autogenerated & external files. Add make
target for tabs checking.

llvm-svn: 36146
2007-04-16 18:10:23 +00:00
..
MSILWriter.cpp Removed tabs everywhere except autogenerated & external files. Add make 2007-04-16 18:10:23 +00:00
MSILWriter.h Removed tabs everywhere except autogenerated & external files. Add make 2007-04-16 18:10:23 +00:00
Makefile Fix authorship 2007-03-25 13:44:26 +00:00
README.TXT Add TODO list for MSIL backend 2007-03-21 21:48:59 +00:00

README.TXT

//===---------------------------------------------------------------------===// 

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.