Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

[cdac] cdac-build-tool#100650

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
lambdageek merged 67 commits intodotnet:mainfromlambdageek:cdac-contract-tool
Apr 19, 2024
Merged
Show file tree
Hide file tree
Changes from1 commit
Commits
Show all changes
67 commits
Select commitHold shift + click to select a range
8518e9f
checkpoint
lambdageekMar 28, 2024
12aef6d
add old tooling notes
lambdageekMar 28, 2024
1eff4d0
add an emitter
lambdageekApr 1, 2024
22e217b
checkpoint read in the directory header
lambdageekApr 1, 2024
dd9279d
checkpoint plausible-looking offsets
lambdageekApr 2, 2024
492af29
checkpoint: field stuff is working
lambdageekApr 3, 2024
459d124
checkpoint json
lambdageekApr 3, 2024
28f8256
contract parsing
lambdageekApr 3, 2024
418739d
refactor
lambdageekApr 3, 2024
1c1524d
indirect pointer value support
lambdageekApr 3, 2024
34e852e
move sample to tool dir
lambdageekApr 3, 2024
e48e709
Take baselines from the docs/design/datacontracts/data dir
lambdageekApr 3, 2024
0e8c60e
Add README
lambdageekApr 3, 2024
cd4f0f0
fix BE
lambdageekApr 3, 2024
b6b079e
hook up cdac-build-tool to the coreclr build; export DotNetRuntimeCon…
lambdageekApr 4, 2024
a9b0d7f
try fix win-x86 build warning
lambdageekApr 4, 2024
dbf0557
paths
lambdageekApr 4, 2024
74433f1
vebose
lambdageekApr 4, 2024
ea441b6
fix typo; fixes win32
lambdageekApr 5, 2024
787b836
cleanup; add contracts.txt
lambdageekApr 5, 2024
e015e83
add diagram to README
lambdageekApr 5, 2024
0354723
move implementation notes
lambdageekApr 5, 2024
da038f3
better verbose output from ObjectFileScraper
lambdageekApr 5, 2024
f64b548
turn off whole program optimizations for data-descriptor.obj
lambdageekApr 5, 2024
2e29a10
C++-ify and add real Thread offsets
lambdageekApr 6, 2024
58162a3
no C99 designated initializers in C++ until C++20
lambdageekApr 8, 2024
4bb51bf
build data descriptor after core runtime
lambdageekApr 8, 2024
9700e29
fix gcc build
lambdageekApr 8, 2024
3f22c7c
fix typo
lambdageekApr 8, 2024
4aae511
simplify ObjectFileScraper
lambdageekApr 8, 2024
60738ef
more dependencies
lambdageekApr 8, 2024
c0dab90
try fix source build
lambdageekApr 8, 2024
84eaa3b
remove fixme; document
lambdageekApr 8, 2024
86e5258
Merge commit 'origin/main^' into cdac-contract-tool
lambdageekApr 9, 2024
cc658c9
invoke 'dotnet cmake-build-tool.dll' instead of 'dotnet run --project'
lambdageekApr 9, 2024
39fe70d
clean up macro boilerplate
lambdageekApr 9, 2024
5064deb
platform flags
lambdageekApr 9, 2024
74000bc
turn off verbose output
lambdageekApr 9, 2024
76c27bc
can't use constexpr function in coreclr
lambdageekApr 9, 2024
270fe21
Code review fixups
lambdageekApr 12, 2024
84e0800
Rename "aux data" to "pointer data"
lambdageekApr 12, 2024
51da4e3
rename "data-descriptor" to "datadescriptor"
lambdageekApr 12, 2024
b26f3ac
simplify linking
lambdageekApr 12, 2024
8f9d1a7
cdac-build-tool don't build dotnet tool; turn on analyzers
lambdageekApr 12, 2024
87b79b3
update README
lambdageekApr 12, 2024
b33ad07
rationalize naming; update docs; add some inline comments
lambdageekApr 12, 2024
c39e6f4
rm whitespace
lambdageekApr 12, 2024
5ef8428
renamce cdac.h to cdacoffsets.h
lambdageekApr 12, 2024
9f381be
comments
lambdageekApr 12, 2024
443f83b
fixup README
lambdageekApr 12, 2024
9fc2b26
hex offsets; improved formatting
lambdageekApr 12, 2024
024c566
don't throw in ParseContracts; add line numbers to errors
lambdageekApr 12, 2024
b0f1f40
spelling
lambdageekApr 12, 2024
2852d8d
Update README.md
lambdageekApr 12, 2024
2429bd8
change input format for contracts to jsonc
lambdageekApr 16, 2024
18a863e
add custom JsonConverter instances for the compact json representation
lambdageekApr 16, 2024
a49e5e6
code review changes
lambdageekApr 16, 2024
1f5ba44
inline comments into the data-descriptor-blob C code
lambdageekApr 16, 2024
2decea4
cleanup
lambdageekApr 16, 2024
ce18bee
comments and markdown
lambdageekApr 16, 2024
e143998
Apply suggestions from code review
lambdageekApr 17, 2024
08cf75d
simplify; bug fix - PointerDataCount include placeholder
lambdageekApr 17, 2024
0d4d40d
fixup docs
lambdageekApr 17, 2024
94c56ea
Merge remote-tracking branch 'origin/main' into cdac-contract-tool
lambdageekApr 18, 2024
3d49b70
Update src/coreclr/tools/cdac-build-tool/JsonConverter/GlobalModelJso…
lambdageekApr 18, 2024
f845c41
one more set of feedback changes
lambdageekApr 18, 2024
64430cf
maybe no live ILLink ?
lambdageekApr 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
PrevPrevious commit
NextNext commit
cleanup; add contracts.txt
  • Loading branch information
@lambdageek
lambdageek committedApr 5, 2024
commit787b8360305f036627e0d40eaccca437101c8d2b
27 changes: 14 additions & 13 deletionssrc/coreclr/debug/runtimeinfo/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -39,30 +39,31 @@ endif()
install_clr(TARGETS runtimeinfo DESTINATIONS lib COMPONENT runtime)


add_library(cdac_data_descriptorSTATIC data-descriptor.c)
add_library(cdac_data_descriptorOBJECT data-descriptor.c)


set(GENERATED_CDAC_DESCRIPTOR_DIR "${CMAKE_CURRENT_BINARY_DIR}/cdac")

if(CLR_CMAKE_HOST_WIN32)
set(DOTNET_CMD "${CLR_REPO_ROOT_DIR}/dotnet.cmd")
set(CONTRACT_DESCRIPTOR_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}\\cdac\\contract-descriptor.c")
else()
set(DOTNET_CMD "${CLR_REPO_ROOT_DIR}/dotnet.sh")
set(CONTRACT_DESCRIPTOR_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/cdac/contract-descriptor.c")
endif()

set(CONTRACT_DESCRIPTOR_OUTPUT "${GENERATED_CDAC_DESCRIPTOR_DIR}/contract-descriptor.c")
set(CDAC_BUILD_TOOL_CSPROJ "${CLR_DIR}/tools/cdac-build-tool/cdac-build-tool.csproj")

set(CONTRACT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/contracts.txt")

add_custom_command(
OUTPUT "${GENERATED_CDAC_DESCRIPTOR_DIR}/contract-descriptor.c"
VERBATIM
COMMAND "${DOTNET_CMD}" run --project "${CDAC_BUILD_TOOL_CSPROJ}" -c "$<CONFIG>" -- compose -v -o "${CONTRACT_DESCRIPTOR_OUTPUT}" $<TARGET_OBJECTS:cdac_data_descriptor>
DEPENDS cdac_data_descriptor $<TARGET_OBJECTS:cdac_data_descriptor>
USES_TERMINAL
OUTPUT "${CONTRACT_DESCRIPTOR_OUTPUT}"
VERBATIM
COMMAND "${DOTNET_CMD}" run --project "${CDAC_BUILD_TOOL_CSPROJ}" -c "$<CONFIG>" -- compose -v -o "${CONTRACT_DESCRIPTOR_OUTPUT}" -c "${CONTRACT_FILE}" $<TARGET_OBJECTS:cdac_data_descriptor>
DEPENDS cdac_data_descriptor $<TARGET_OBJECTS:cdac_data_descriptor> "${CONTRACT_FILE}"
USES_TERMINAL
)

add_library_clr(CDACContractDescriptor STATIC
"${GENERATED_CDAC_DESCRIPTOR_DIR}/contract-descriptor.c"
contract-aux-data.c
add_library_clr(cdac_contract_descriptor OBJECT
"${CONTRACT_DESCRIPTOR_OUTPUT}"
contract-aux-data.c
)
add_dependencies(CDACContractDescriptor cdac_data_descriptor)
add_dependencies(cdac_contract_descriptor cdac_data_descriptor)
10 changes: 10 additions & 0 deletionssrc/coreclr/debug/runtimeinfo/contracts.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
# algorithmic contracts for coreclr
# The format of this file is:
# # comment
# CONTRACT NAME, VERSION #optional trailing comment
#
# CONTRACT NAME is an arbitrary string, VERSION is an integer
#
# cdac-build-tool can take multiple "-c contract_file" arguments
# so to conditionally include contracts, put optional contracts in a separate file
SOSBreakingChangeVersion, 1 # example contract: runtime exports an SOS breaking change version global
10 changes: 4 additions & 6 deletionssrc/coreclr/dlls/mscoree/coreclr/CMakeLists.txt
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -188,10 +188,10 @@ target_sources(coreclr_static PUBLIC $<TARGET_OBJECTS:cee_wks_core>)
target_link_libraries(coreclr_static PUBLIC ${CORECLR_LIBRARIES} clrjit_static cee_wks_mergeable ${FOUNDATION})
target_compile_definitions(coreclr_static PUBLIC CORECLR_EMBEDDED)

# using $<TARGET_OBJECTS:> because the exported symbols fromCDACConctractDescriptor are otherwise
# using $<TARGET_OBJECTS:> because the exported symbols fromcdac_contract_descriptor are otherwise
# unreferenced which means the linker doesn't include them
target_link_libraries(coreclr PRIVATE $<TARGET_OBJECTS:CDACContractDescriptor>)
target_link_libraries(coreclr_static PRIVATE $<TARGET_OBJECTS:CDACContractDescriptor>)
target_link_libraries(coreclr PRIVATE $<TARGET_OBJECTS:cdac_contract_descriptor>)
target_link_libraries(coreclr_static PRIVATE $<TARGET_OBJECTS:cdac_contract_descriptor>)

if(CLR_CMAKE_TARGET_WIN32)
set(CLRDEBUGINFO_RESOURCE_PATH ${CMAKE_CURRENT_BINARY_DIR}/clr_debug_resource.bin)
Expand DownExpand Up@@ -224,7 +224,5 @@ if(CLR_CMAKE_TARGET_WIN32)
endif(CLR_CMAKE_TARGET_WIN32)

# add the install targets
install_clr(TARGETS coreclr DESTINATIONS . sharedFramework COMPONENT runtime)

# Enable profile guided optimization
install_clr(TARGETS coreclr DESTINATIONS . sharedFramework COMPONENT runtime)# Enable profile guided optimization
add_pgo(coreclr)

[8]ページ先頭

©2009-2025 Movatter.jp