8000 IDO 7.1 C++ compiler by AngheloAlf · Pull Request #53 · decompals/ido-static-recomp · GitHub
[go: up one dir, main page]

Skip to content

IDO 7.1 C++ compiler#53

Merged
ethteck merged 23 commits intodecompals:masterfrom
AngheloAlf:c++_ido_7.1
Sep 10, 2023
Merged

IDO 7.1 C++ compiler#53
ethteck merged 23 commits intodecompals:masterfrom
AngheloAlf:c++_ido_7.1

Conversation

@AngheloAlf
Copy link
Contributor

Adds support for edgcpfe (the IDO C++ front end). For some reason the cc driver doesn't work properly when building a .cpp, but works fine if it is named NCC (or variants), so I'm symlinking it during the build process.

I had to adapt some stuff because edgcpfe and family lives under the /usr/lib/DCC path. I extended the path redirection to accept the DCC, same for the Makefile paths.

Another problem for supporting 7.1 edgcpfe was the elf was linked against a 5.3 libc.so file, so it expects 5.3 libc addresses. Because of this I changed the makefile to build a libc_impl_53.o file and use that when linking the recomped edgcpfe.

wrapper_getopt gave me a lot of problems when implementing it, but I believe it is properly implemented now.

In the recomp side, edgcpfe required two hacks for working properly because recomp couldn't determine the size of two jumptables.

Copy link
Contributor
@hensldm hensldm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM except the one small nit (which was my fault sorry again :( ). Regression tested on OoT and MM. Did not test C++ stuff though.

AngheloAlf and others added 2 commits September 10, 2023 09:45
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
@ethteck ethteck merged commit c4d24ce into decompals:master Sep 10, 2023
@AngheloAlf AngheloAlf deleted the c++_ido_7.1 branch September 10, 2023 13:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

0