summaryrefslogtreecommitdiff
path: root/src/vm/ecalllist.h
diff options
context:
space:
mode:
authorStephen Toub <stoub@microsoft.com>2017-11-28 11:48:37 -0500
committerStephen Toub <stoub@microsoft.com>2017-11-28 21:30:05 -0500
commit45f1a4ff3c496e7a9814cff7d3b1b1a97d61650e (patch)
tree55f63d34f109ad48afd8f07036336f6270c41495 /src/vm/ecalllist.h
parent39e99cabf31a89624c40b718ba2faf9829ab2455 (diff)
downloadcoreclr-45f1a4ff3c496e7a9814cff7d3b1b1a97d61650e.tar.gz
coreclr-45f1a4ff3c496e7a9814cff7d3b1b1a97d61650e.tar.bz2
coreclr-45f1a4ff3c496e7a9814cff7d3b1b1a97d61650e.zip
Move FormatDouble/Single to managed code
Instead of making fcalls to FormatDouble and FormatSingle, move them to managed, and use fcalls for the DoubleToNumber and NumberToDouble they call, shifting down the layer that's implemented in native. This allows us to then much more easily add TryFormat methods for double and float while also sharing more code between coreclr and corert, from which the managed implementations were taken (they're a direct port of these native implementations from coreclr). In the process, I also eliminated one fcall that can be implemented in managed easily. The remaining fcalls are more substantial and will eventually require more effort to bring to managed.
Diffstat (limited to 'src/vm/ecalllist.h')
-rw-r--r--src/vm/ecalllist.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/vm/ecalllist.h b/src/vm/ecalllist.h
index 8d82fdda84..441796f8c0 100644
--- a/src/vm/ecalllist.h
+++ b/src/vm/ecalllist.h
@@ -744,10 +744,9 @@ FCFuncStart(gWaitHandleFuncs)
FCFuncEnd()
FCFuncStart(gNumberFuncs)
- FCFuncElement("FormatDouble", COMNumber::FormatDouble)
- FCFuncElement("FormatSingle", COMNumber::FormatSingle)
+ FCFuncElement("DoubleToNumber", COMNumber::DoubleToNumberFC)
+ FCFuncElement("NumberToDouble", COMNumber::NumberToDoubleFC)
FCFuncElement("NumberBufferToDecimal", COMNumber::NumberBufferToDecimal)
- FCFuncElement("NumberBufferToDouble", COMNumber::NumberBufferToDouble)
FCFuncEnd()
#ifdef FEATURE_COMINTEROP