Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/external/bsd/compiler_rt/dist Import compiler-rt r209132...
details: https://anonhg.NetBSD.org/src/rev/88aeafea58cb
branches: trunk
changeset: 329323:88aeafea58cb
user: joerg <joerg%NetBSD.org@localhost>
date: Mon May 19 16:11:28 2014 +0000
description:
Import compiler-rt r209132. Revert use of TI mode on 32bit PPC.
diffstat:
sys/external/bsd/compiler_rt/dist/README.txt | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/adddf3.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/addsf3.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/comparesf2.S | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/restore_vfp_d8_d15_regs.S | 2 -
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/save_vfp_d8_d15_regs.S | 2 -
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch16.S | 2 -
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch32.S | 3 -
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch8.S | 3 -
sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switchu8.S | 3 -
sys/external/bsd/compiler_rt/dist/lib/builtins/assembly.h | 158 +++++----
sys/external/bsd/compiler_rt/dist/lib/builtins/comparedf2.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/comparesf2.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/comparetf2.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/divdf3.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/int_types.h | 2 +-
sys/external/bsd/compiler_rt/dist/lib/builtins/ppc/fixtfdi.c | 2 +-
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfiling.c | 3 +
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfiling.h | 3 +
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfilingBuffer.c | 11 +-
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfilingFile.c | 146 ++++++---
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfilingPlatformDarwin.c | 12 +
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfilingPlatformOther.c | 9 +-
sys/external/bsd/compiler_rt/dist/lib/profile/InstrProfilingRuntime.cc | 11 +-
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dlopen-func.c | 1 +
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dlopen-func2.c | 1 +
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dlopen-main.c | 47 ++
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dynamic-a.cpp | 7 +
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dynamic-b.cpp | 7 +
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dynamic-header.h | 5 +
sys/external/bsd/compiler_rt/dist/test/profile/Inputs/instrprof-dynamic-main.cpp | 9 +
sys/external/bsd/compiler_rt/dist/test/profile/instrprof-dlopen.test | 34 ++
sys/external/bsd/compiler_rt/dist/test/profile/instrprof-dynamic-one-shared.test | 23 +
sys/external/bsd/compiler_rt/dist/test/profile/instrprof-dynamic-two-shared.test | 24 +
sys/external/bsd/compiler_rt/dist/test/profile/instrprof-write-file-only.c | 7 +-
sys/external/bsd/compiler_rt/dist/test/profile/lit.cfg | 3 +
36 files changed, 402 insertions(+), 154 deletions(-)
diffs (truncated from 1003 to 300 lines):
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/README.txt
--- a/sys/external/bsd/compiler_rt/dist/README.txt Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/README.txt Mon May 19 16:11:28 2014 +0000
@@ -198,7 +198,7 @@
// __clear_cache() is used to tell process that new instructions have been
// written to an address range. Necessary on processors that do not have
-// a unified instuction and data cache.
+// a unified instruction and data cache.
void __clear_cache(void* start, void* end);
// __enable_execute_stack() is used with nested functions when a trampoline
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/adddf3.c
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/adddf3.c Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/adddf3.c Mon May 19 16:11:28 2014 +0000
@@ -101,7 +101,7 @@
// If a == -b, return +zero.
if (aSignificand == 0) return fromRep(0);
- // If partial cancellation occured, we need to left-shift the result
+ // If partial cancellation occurred, we need to left-shift the result
// and adjust the exponent:
if (aSignificand < implicitBit << 3) {
const int shift = rep_clz(aSignificand) - rep_clz(implicitBit << 3);
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/addsf3.c
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/addsf3.c Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/addsf3.c Mon May 19 16:11:28 2014 +0000
@@ -101,7 +101,7 @@
// If a == -b, return +zero.
if (aSignificand == 0) return fromRep(0);
- // If partial cancellation occured, we need to left-shift the result
+ // If partial cancellation occurred, we need to left-shift the result
// and adjust the exponent:
if (aSignificand < implicitBit << 3) {
const int shift = rep_clz(aSignificand) - rep_clz(implicitBit << 3);
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/comparesf2.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/comparesf2.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/comparesf2.S Mon May 19 16:11:28 2014 +0000
@@ -107,7 +107,7 @@
.p2align 2
DEFINE_COMPILERRT_FUNCTION(__gtsf2)
- // Identical to the preceeding except in that we return -1 for NaN values.
+ // Identical to the preceding except in that we return -1 for NaN values.
// Given that the two paths share so much code, one might be tempted to
// unify them; however, the extra code needed to do so makes the code size
// to performance tradeoff very hard to justify for such small functions.
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/restore_vfp_d8_d15_regs.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/restore_vfp_d8_d15_regs.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/restore_vfp_d8_d15_regs.S Mon May 19 16:11:28 2014 +0000
@@ -31,5 +31,3 @@
bx lr // return to prolog
END_COMPILERRT_FUNCTION(__restore_vfp_d8_d15_regs)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/save_vfp_d8_d15_regs.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/save_vfp_d8_d15_regs.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/save_vfp_d8_d15_regs.S Mon May 19 16:11:28 2014 +0000
@@ -31,5 +31,3 @@
bx lr // return to prolog
END_COMPILERRT_FUNCTION(__save_vfp_d8_d15_regs)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch16.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch16.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch16.S Mon May 19 16:11:28 2014 +0000
@@ -42,5 +42,3 @@
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switch16)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch32.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch32.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch32.S Mon May 19 16:11:28 2014 +0000
@@ -42,6 +42,3 @@
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switch32)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
-
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch8.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch8.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switch8.S Mon May 19 16:11:28 2014 +0000
@@ -40,6 +40,3 @@
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switch8)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
-
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switchu8.S
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switchu8.S Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/arm/switchu8.S Mon May 19 16:11:28 2014 +0000
@@ -40,6 +40,3 @@
bx ip // jump to computed label
END_COMPILERRT_FUNCTION(__switchu8)
- // tell linker it can break up file at label boundaries
- .subsections_via_symbols
-
diff -r 9e65e6a77397 -r 88aeafea58cb sys/external/bsd/compiler_rt/dist/lib/builtins/assembly.h
--- a/sys/external/bsd/compiler_rt/dist/lib/builtins/assembly.h Mon May 19 16:04:10 2014 +0000
+++ b/sys/external/bsd/compiler_rt/dist/lib/builtins/assembly.h Mon May 19 16:11:28 2014 +0000
@@ -23,112 +23,122 @@
#endif
#if defined(__APPLE__)
-#define HIDDEN_DIRECTIVE .private_extern
+#define HIDDEN(name) .private_extern name
#define LOCAL_LABEL(name) L_##name
-#define FILE_LEVEL_DIRECTIVE .subsections_via_symbols
+// tell linker it can break up file at label boundaries
+#define FILE_LEVEL_DIRECTIVE .subsections_via_symbols
#define SYMBOL_IS_FUNC(name)
-#else
-#define HIDDEN_DIRECTIVE .hidden
+#elif defined(__ELF__)
+#define HIDDEN(name) .hidden name
#define LOCAL_LABEL(name) .L_##name
#define FILE_LEVEL_DIRECTIVE
-# if defined(__arm__)
-# define SYMBOL_IS_FUNC(name) .type name, %function
-# else
-# define SYMBOL_IS_FUNC(name) .type name, @function
-# endif
+#if defined(__arm__)
+#define SYMBOL_IS_FUNC(name) .type name,%function
+#else
+#define SYMBOL_IS_FUNC(name) .type name,@function
+#endif
+#else
+#define HIDDEN_DIRECTIVE(name)
+#define LOCAL_LABEL(name) .L ## name
+#define SYMBOL_IS_FUNC(name) \
+ .def name SEPARATOR \
+ .scl 3 SEPARATOR \
+ .type 32 SEPARATOR \
+ .endef
+#define FILE_LEVEL_DIRECTIVE
#endif
#if defined(__arm__)
-# ifndef __ARM_ARCH
-# if defined (__ARM_ARCH_7__) || defined (__ARM_ARCH_7A__) || \
- defined (__ARM_ARCH_7R__) || defined (__ARM_ARCH_7M__) || \
- defined (__ARM_ARCH_7EM__)
-# define __ARM_ARCH 7
-# endif
-# endif
-
-# ifndef __ARM_ARCH
-# if defined (__ARM_ARCH_6__) || \
- defined (__ARM_ARCH_6J__) || defined (__ARM_ARCH_6K__) || \
- defined (__ARM_ARCH_6Z__) || defined (__ARM_ARCH_6ZK__) || \
- defined (__ARM_ARCH_6ZM__)
-# define __ARM_ARCH 6
-# endif
-# endif
+#ifndef __ARM_ARCH
+#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
+ defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || \
+ defined(__ARM_ARCH_7EM__)
+#define __ARM_ARCH 7
+#endif
+#endif
-# ifndef __ARM_ARCH
-# if defined (__ARM_ARCH_5__) || defined (__ARM_ARCH_5T__) || \
- defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5TEJ__)
-# define __ARM_ARCH 5
-# endif
-# endif
-
-# ifndef __ARM_ARCH
-# define __ARM_ARCH 4
-# endif
+#ifndef __ARM_ARCH
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || \
+ defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
+ defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6ZM__)
+#define __ARM_ARCH 6
+#endif
+#endif
-# if defined(__ARM_ARCH_4T__) || __ARM_ARCH >= 5
-# define ARM_HAS_BX
-# endif
-# if !defined(__ARM_FEATURE_CLZ) && \
- (__ARM_ARCH >= 6 || (__ARM_ARCH == 5 && !defined(__ARM_ARCH_5__)))
-# define __ARM_FEATURE_CLZ
-# endif
-
-# ifdef ARM_HAS_BX
-# define JMP(r) bx r
-# define JMPc(r,c) bx##c r
-# else
-# define JMP(r) mov pc, r
-# define JMPc(r,c) mov##c pc, r
-# endif
+#ifndef __ARM_ARCH
+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || \
+ defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__)
+#define __ARM_ARCH 5
+#endif
#endif
-#define GLUE2(a, b) a ## b
+#ifndef __ARM_ARCH
+#define __ARM_ARCH 4
+#endif
+
+#if defined(__ARM_ARCH_4T__) || __ARM_ARCH >= 5
+#define ARM_HAS_BX
+#endif
+#if !defined(__ARM_FEATURE_CLZ) && \
+ (__ARM_ARCH >= 6 || (__ARM_ARCH == 5 && !defined(__ARM_ARCH_5__)))
+#define __ARM_FEATURE_CLZ
+#endif
+
+#ifdef ARM_HAS_BX
+#define JMP(r) bx r
+#define JMPc(r, c) bx##c r
+#else
+#define JMP(r) mov pc, r
+#define JMPc(r, c) mov##c pc, r
+#endif
+#endif
+
+#define GLUE2(a, b) a##b
#define GLUE(a, b) GLUE2(a, b)
#define SYMBOL_NAME(name) GLUE(__USER_LABEL_PREFIX__, name)
#ifdef VISIBILITY_HIDDEN
-#define DECLARE_SYMBOL_VISIBILITY(name) \
- HIDDEN_DIRECTIVE SYMBOL_NAME(name) SEPARATOR
+#define DECLARE_SYMBOL_VISIBILITY(name) \
+ HIDDEN(SYMBOL_NAME(name)) SEPARATOR
#else
#define DECLARE_SYMBOL_VISIBILITY(name)
#endif
-#define DEFINE_COMPILERRT_FUNCTION(name) \
- FILE_LEVEL_DIRECTIVE SEPARATOR \
- .globl SYMBOL_NAME(name) SEPARATOR \
- SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
- DECLARE_SYMBOL_VISIBILITY(name) \
+#define DEFINE_COMPILERRT_FUNCTION(name) \
+ FILE_LEVEL_DIRECTIVE SEPARATOR \
+ .globl SYMBOL_NAME(name) SEPARATOR \
+ SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
+ DECLARE_SYMBOL_VISIBILITY(name) \
SYMBOL_NAME(name):
-#define DEFINE_COMPILERRT_PRIVATE_FUNCTION(name) \
- .globl SYMBOL_NAME(name) SEPARATOR \
- SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
- HIDDEN_DIRECTIVE SYMBOL_NAME(name) SEPARATOR \
+#define DEFINE_COMPILERRT_PRIVATE_FUNCTION(name) \
+ FILE_LEVEL_DIRECTIVE SEPARATOR \
+ .globl SYMBOL_NAME(name) SEPARATOR \
+ SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
+ HIDDEN(SYMBOL_NAME(name)) SEPARATOR \
SYMBOL_NAME(name):
-#define DEFINE_COMPILERRT_PRIVATE_FUNCTION_UNMANGLED(name) \
- .globl name SEPARATOR \
- SYMBOL_IS_FUNC(name) SEPARATOR \
- HIDDEN_DIRECTIVE name SEPARATOR \
+#define DEFINE_COMPILERRT_PRIVATE_FUNCTION_UNMANGLED(name) \
+ .globl name SEPARATOR \
+ SYMBOL_IS_FUNC(name) SEPARATOR \
+ HIDDEN(name) SEPARATOR \
name:
-#define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \
- .globl SYMBOL_NAME(name) SEPARATOR \
- SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
+#define DEFINE_COMPILERRT_FUNCTION_ALIAS(name, target) \
+ .globl SYMBOL_NAME(name) SEPARATOR \
+ SYMBOL_IS_FUNC(SYMBOL_NAME(name)) SEPARATOR \
.set SYMBOL_NAME(name), SYMBOL_NAME(target) SEPARATOR
-#if defined (__ARM_EABI__)
-# define DEFINE_AEABI_FUNCTION_ALIAS(aeabi_name, name) \
+#if defined(__ARM_EABI__)
+#define DEFINE_AEABI_FUNCTION_ALIAS(aeabi_name, name) \
DEFINE_COMPILERRT_FUNCTION_ALIAS(aeabi_name, name)
#else
-# define DEFINE_AEABI_FUNCTION_ALIAS(aeabi_name, name)
+#define DEFINE_AEABI_FUNCTION_ALIAS(aeabi_name, name)
#endif
#ifdef __ELF__
-#define END_COMPILERRT_FUNCTION(name) \
- .size SYMBOL_NAME(name), . - SYMBOL_NAME(name)
Home |
Main Index |
Thread Index |
Old Index