llvm-mirror/lib/Target/MSIL
Devang Patel 8ee9065162 Use 'static const char' instead of 'static const int'.
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.

llvm-svn: 36652
2007-05-02 21:39:20 +00:00
..
Makefile Fix authorship 2007-03-25 13:44:26 +00:00
MSILWriter.cpp Use 'static const char' instead of 'static const int'. 2007-05-02 21:39:20 +00:00
MSILWriter.h Use 'static const char' instead of 'static const int'. 2007-05-02 21:39:20 +00:00
README.TXT Add TODO list for MSIL backend 2007-03-21 21:48:59 +00:00

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

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.