Skip to content

Commit f96c9aa

Browse files
committed
Merge branch 'devel'
2 parents 6275d70 + 146ace0 commit f96c9aa

File tree

106 files changed

+2107
-3655
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

106 files changed

+2107
-3655
lines changed

.gitignore

Lines changed: 3 additions & 245 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
x64/
1919
x86/
2020
bld/
21+
build/
2122
[Bb]in/
2223
[Oo]bj/
2324

@@ -241,249 +242,6 @@ _Pvt_Extensions
241242
.build/
242243

243244
artifacts/
244-
## Ignore Visual Studio temporary files, build results, and
245-
## files generated by popular Visual Studio add-ons.
246-
247-
# User-specific files
248-
*.suo
249-
*.user
250-
*.userosscache
251-
*.sln.docstates
252-
253-
# User-specific files (MonoDevelop/Xamarin Studio)
254-
*.userprefs
255-
256-
# Build results
257-
[Dd]ebug/
258-
[Dd]ebugPublic/
259-
[Rr]elease/
260-
[Rr]eleases/
261-
x64/
262-
x86/
263-
bld/
264-
[Bb]in/
265-
[Oo]bj/
266-
267-
# Visual Studio 2015 cache/options directory
268-
.vs/
269-
# Uncomment if you have tasks that create the project's static files in wwwroot
270-
#wwwroot/
271-
272-
# MSTest test Results
273-
[Tt]est[Rr]esult*/
274-
[Bb]uild[Ll]og.*
275-
276-
# NUNIT
277-
*.VisualState.xml
278-
TestResult.xml
279-
280-
# Build Results of an ATL Project
281-
[Dd]ebugPS/
282-
[Rr]eleasePS/
283-
dlldata.c
284-
285-
# DNX
286-
project.lock.json
287-
artifacts/
288-
289-
*_i.c
290-
*_p.c
291-
*_i.h
292-
*.ilk
293-
*.meta
294-
*.obj
295-
*.pch
296-
*.pdb
297-
*.pgc
298-
*.pgd
299-
*.rsp
300-
*.sbr
301-
*.tlb
302-
*.tli
303-
*.tlh
304-
*.tmp
305-
*.tmp_proj
306-
*.log
307-
*.vspscc
308-
*.vssscc
309-
.builds
310-
*.pidb
311-
*.svclog
312-
*.scc
313-
314-
# Chutzpah Test files
315-
_Chutzpah*
316-
317-
# Visual C++ cache files
318-
ipch/
319-
*.aps
320-
*.ncb
321-
*.opendb
322-
*.opensdf
323-
*.sdf
324-
*.cachefile
325-
326-
# Visual Studio profiler
327-
*.psess
328-
*.vsp
329-
*.vspx
330-
*.sap
331-
332-
# TFS 2012 Local Workspace
333-
$tf/
334-
335-
# Guidance Automation Toolkit
336-
*.gpState
337-
338-
# ReSharper is a .NET coding add-in
339-
_ReSharper*/
340-
*.[Rr]e[Ss]harper
341-
*.DotSettings.user
342-
343-
# JustCode is a .NET coding add-in
344-
.JustCode
345-
346-
# TeamCity is a build add-in
347-
_TeamCity*
348-
349-
# DotCover is a Code Coverage Tool
350-
*.dotCover
351-
352-
# NCrunch
353-
_NCrunch_*
354-
.*crunch*.local.xml
355-
nCrunchTemp_*
356-
357-
# MightyMoose
358-
*.mm.*
359-
AutoTest.Net/
360-
361-
# Web workbench (sass)
362-
.sass-cache/
363-
364-
# Installshield output folder
365-
[Ee]xpress/
366-
367-
# DocProject is a documentation generator add-in
368-
DocProject/buildhelp/
369-
DocProject/Help/*.HxT
370-
DocProject/Help/*.HxC
371-
DocProject/Help/*.hhc
372-
DocProject/Help/*.hhk
373-
DocProject/Help/*.hhp
374-
DocProject/Help/Html2
375-
DocProject/Help/html
376-
377-
# Click-Once directory
378-
publish/
379-
380-
# Publish Web Output
381-
*.[Pp]ublish.xml
382-
*.azurePubxml
383-
# TODO: Comment the next line if you want to checkin your web deploy settings
384-
# but database connection strings (with potential passwords) will be unencrypted
385-
*.pubxml
386-
*.publishproj
387-
388-
# NuGet Packages
389-
*.nupkg
390-
# The packages folder can be ignored because of Package Restore
391-
**/packages/*
392-
# except build/, which is used as an MSBuild target.
393-
!**/packages/build/
394-
# Uncomment if necessary however generally it will be regenerated when needed
395-
#!**/packages/repositories.config
396-
397-
# Microsoft Azure Build Output
398-
csx/
399-
*.build.csdef
400-
401-
# Microsoft Azure Emulator
402-
ecf/
403-
rcf/
404-
405-
# Microsoft Azure ApplicationInsights config file
406-
ApplicationInsights.config
407-
408-
# Windows Store app package directory
409-
AppPackages/
410-
BundleArtifacts/
411-
412-
# Visual Studio cache files
413-
# files ending in .cache can be ignored
414-
*.[Cc]ache
415-
# but keep track of directories ending in .cache
416-
!*.[Cc]ache/
417-
418-
# Others
419-
ClientBin/
420-
~$*
421-
*~
422-
*.dbmdl
423-
*.dbproj.schemaview
424-
*.pfx
425-
*.publishsettings
426-
node_modules/
427-
orleans.codegen.cs
428-
429-
# RIA/Silverlight projects
430-
Generated_Code/
431-
432-
# Backup & report files from converting an old project file
433-
# to a newer Visual Studio version. Backup files are not needed,
434-
# because we have git ;-)
435-
_UpgradeReport_Files/
436-
Backup*/
437-
UpgradeLog*.XML
438-
UpgradeLog*.htm
439-
440-
# SQL Server files
441-
*.mdf
442-
*.ldf
443-
444-
# Business Intelligence projects
445-
*.rdl.data
446-
*.bim.layout
447-
*.bim_*.settings
448-
449-
# Microsoft Fakes
450-
FakesAssemblies/
451-
452-
# GhostDoc plugin setting file
453-
*.GhostDoc.xml
454-
455-
# Node.js Tools for Visual Studio
456-
.ntvs_analysis.dat
457-
458-
# Visual Studio 6 build log
459-
*.plg
460-
461-
# Visual Studio 6 workspace options file
462-
*.opt
463-
464-
# Visual Studio LightSwitch build output
465-
**/*.HTMLClient/GeneratedArtifacts
466-
**/*.DesktopClient/GeneratedArtifacts
467-
**/*.DesktopClient/ModelManifest.xml
468-
**/*.Server/GeneratedArtifacts
469-
**/*.Server/ModelManifest.xml
470-
_Pvt_Extensions
471-
472-
# Paket dependency manager
473-
.paket/paket.exe
474-
475-
# FAKE - F# Make
476-
.fake/
477-
478-
*.VC.db
479-
480-
.vscode/
481-
*.swp
482-
483-
# for Arduino
484-
.build/
485-
486-
artifacts/
245+
toolchain/
487246

488-
.sonarqube/
489-
.sonarlint/
247+
*.vcxproj.filters

IL2C.Core/AssemblyPreparer.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -111,20 +111,20 @@ private static PreparedMethodInformation PrepareMethodBody(
111111
// The flow analysis can't predict by sequential path.
112112
// So, it reorders by IL offset.
113113

114-
var generators = decodeContext.
114+
var emitters = decodeContext.
115115
Traverse(dc => dc.TryDequeueNextPath() ? dc : null, true).
116116
SelectMany(dc =>
117117
from ilBody in DecodeAndEnumerateILBodies(dc)
118-
let generator = ilBody.ILConverter.Apply(ilBody.Code.Operand, dc)
118+
let emitter = ilBody.ILConverter.Prepare(ilBody.Code.Operand, dc)
119119
select new PreparedILBody(
120120
ilBody.Label,
121-
generator,
121+
emitter,
122122
dc.UniqueCodeBlockIndex,
123123
ilBody.Code,
124124
dc.DecodingPathNumber)).
125125
OrderBy(ilb => ilb.UniqueCodeBlockIndex).
126126
ThenBy(ilb => ilb.Label.Offset).
127-
ToDictionary(ilb => ilb.Label.Offset, ilb => ilb.Generator);
127+
ToDictionary(ilb => ilb.Label.Offset, ilb => ilb.Emitter);
128128

129129
//////////////////////////////////////////////////////////////////////////////
130130

@@ -147,7 +147,7 @@ from ilBody in DecodeAndEnumerateILBodies(dc)
147147
labelNames,
148148
catchVariables,
149149
leaveContinuations,
150-
generators);
150+
emitters);
151151
}
152152

153153
private static PreparedMethodInformation PrepareMethod(

IL2C.Core/IL2C.Core.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
<PackageTags>il2c;il;translate;transpile;convert;c;c++;assembly;multi-platform</PackageTags>
2424
<DebugType>pdbonly</DebugType>
2525
<DebugSymbols>true</DebugSymbols>
26-
<LangVersion>7.1</LangVersion>
26+
<LangVersion>7.3</LangVersion>
2727
<Platforms>AnyCPU</Platforms>
2828
</PropertyGroup>
2929

0 commit comments

Comments
 (0)