diff options
author | Ben Pye <ben@curlybracket.co.uk> | 2015-07-01 15:10:09 +0100 |
---|---|---|
committer | Ben Pye <ben@curlybracket.co.uk> | 2015-07-24 16:45:35 +0100 |
commit | 9cd8273572260317c6acc126333e5a6e56aaeb06 (patch) | |
tree | f125e83a6908151322aa20940b63c64c621c1169 /src/utilcode | |
parent | acca43b33dcd97d1dc5d92147a3047a3bdfaf1ce (diff) | |
download | coreclr-9cd8273572260317c6acc126333e5a6e56aaeb06.tar.gz coreclr-9cd8273572260317c6acc126333e5a6e56aaeb06.tar.bz2 coreclr-9cd8273572260317c6acc126333e5a6e56aaeb06.zip |
Add ARM target for CoreCLR on Linux.
c_runtime/vprintf/test1 is disabled as casting NULL to va_list is
against the C specification.
Fix SetFilePointer tests on 32 bit platforms.
Define _FILE_OFFSET_BITS=64 so that we have long file support on 32 bit
platforms.
Implement context capture/restore for ARM.
Link libgcc_s before libunwind on ARM so C++ exceptions work.
Translate armasm to gas syntax.
Specify Thumb, VFPv3, ARMv7 for the ARM target.
Add ARM configuration to mscorlib build
Implement GetLogicalProcessorCacheSizeFromOS in PAL.
Set UNWIND_CONTEXT_IS_UCONTEXT_T from configure check.
Diffstat (limited to 'src/utilcode')
-rw-r--r-- | src/utilcode/md5.cpp | 5 | ||||
-rw-r--r-- | src/utilcode/perflog.cpp | 2 | ||||
-rw-r--r-- | src/utilcode/util_nodependencies.cpp | 4 |
3 files changed, 10 insertions, 1 deletions
diff --git a/src/utilcode/md5.cpp b/src/utilcode/md5.cpp index 5b316122ee..039b00198f 100644 --- a/src/utilcode/md5.cpp +++ b/src/utilcode/md5.cpp @@ -133,7 +133,12 @@ void MD5::GetHashValue(MD5HASHDATA* phash) // // but our compiler has an intrinsic! + #if defined(_ARM_) && defined(PLATFORM_UNIX) + #define ROL(x, n) (((x) << (n)) | ((x) >> (32-(n)))) + #define ROTATE_LEFT(x,n) (x) = ROL(x,n) + #else #define ROTATE_LEFT(x,n) (x) = _lrotl(x,n) + #endif //////////////////////////////////////////////////////////////// // diff --git a/src/utilcode/perflog.cpp b/src/utilcode/perflog.cpp index 14e4737d13..1ee98d460e 100644 --- a/src/utilcode/perflog.cpp +++ b/src/utilcode/perflog.cpp @@ -115,7 +115,7 @@ void PerfLog::PerfLogInitialize() // the file here for writing and close in PerfLogDone(). m_hPerfLogFileHandle = WszCreateFile ( #ifdef PLATFORM_UNIX - L"/tmp/PerfData.dat", + W("/tmp/PerfData.dat"), #else W("C:\\PerfData.dat"), #endif diff --git a/src/utilcode/util_nodependencies.cpp b/src/utilcode/util_nodependencies.cpp index f29e1df50d..135e1737c5 100644 --- a/src/utilcode/util_nodependencies.cpp +++ b/src/utilcode/util_nodependencies.cpp @@ -211,6 +211,9 @@ CHECK_SUPPORTED: // Returns TRUE if we are running on a 64-bit OS in WoW, FALSE otherwise. BOOL RunningInWow64() { + #ifdef PLATFORM_UNIX + return FALSE; + #else static int s_Wow64Process; if (s_Wow64Process == 0) @@ -224,6 +227,7 @@ BOOL RunningInWow64() } return (s_Wow64Process == 1) ? TRUE : FALSE; + #endif } #endif |