diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-05-14 10:02:08 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-05-14 10:02:08 +0200 |
| commit | 583748c67453a62382e0c0e77aa8ca6535900ae0 (patch) | |
| tree | c5aab691263b202ecd1357c931c5725655d93009 /Examples | |
| parent | b225a0c3c0e6c286a69356c957c5f9d73a28647c (diff) | |
MHR-21: Add function signature to output (C++)
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Examples')
| -rw-r--r-- | Examples/ExampleCDialect.S | 34 | ||||
| -rw-r--r-- | Examples/ExampleCDialect.c | 20 | ||||
| -rw-r--r-- | Examples/ExampleCDialect.cc | 7 | ||||
| -rw-r--r-- | Examples/ExampleCPlusPlus.cxx | 8 | ||||
| -rw-r--r-- | Examples/ExampleCPlusPlus.s | 21 |
5 files changed, 32 insertions, 58 deletions
diff --git a/Examples/ExampleCDialect.S b/Examples/ExampleCDialect.S index d937aed..9d90d46 100644 --- a/Examples/ExampleCDialect.S +++ b/Examples/ExampleCDialect.S @@ -1,28 +1,14 @@ -# Path: Examples/ExampleCDialect.c -# Language: POWER Assembly (Generated from C) -# Build Date: 2024-4-28 +; Path: Examples/ExampleCDialect.cc +; Language: MPCC assembly. (Generated from C++) +; Date: 2024-5-14 +#bits 64 +#org 0x1000000 +export .code64 __MPCC_int___ImageStart +mov r8, 0 - - - -dword export .code64 __ImageStart - - - li r3,0x1000 - - cmpw r10, r11 - beq import __MPCC_IF_PROC_6099380296 -dword export .code64 __MPCC_IF_PROC_6099380296 - - - - mr r31, r3 - blr - - - mr r31, r0 - blr - +mov r9, 36 +mov rax, r8 +ret diff --git a/Examples/ExampleCDialect.c b/Examples/ExampleCDialect.c deleted file mode 100644 index e6d92fb..0000000 --- a/Examples/ExampleCDialect.c +++ /dev/null @@ -1,20 +0,0 @@ -struct -{ - int a; - int b; - int c; -}; - -int __ImageStart(int argc, char const* argv[]) -{ - int* foo = 0x1000; - - if (foo == 57) - { - foo = 0x2000; - *foo = 5; - return foo; - } - - return 57; -} diff --git a/Examples/ExampleCDialect.cc b/Examples/ExampleCDialect.cc new file mode 100644 index 0000000..b55dd5f --- /dev/null +++ b/Examples/ExampleCDialect.cc @@ -0,0 +1,7 @@ +int __ImageStart(int argc, char const* argv[]) +{ + int *foo; + *foo = 36; + + return *foo; +} diff --git a/Examples/ExampleCPlusPlus.cxx b/Examples/ExampleCPlusPlus.cxx index ebdf7c3..6012b52 100644 --- a/Examples/ExampleCPlusPlus.cxx +++ b/Examples/ExampleCPlusPlus.cxx @@ -1,14 +1,12 @@ int main(int argc, char const* argv[]) { - int foo = 20; - foo -= 1; - { bool bar = false; - bar = true; + bar = 1; bool bar2 = bar; + bar2 = false; } - return foo; + return 0; } diff --git a/Examples/ExampleCPlusPlus.s b/Examples/ExampleCPlusPlus.s index 4b69908..0414858 100644 --- a/Examples/ExampleCPlusPlus.s +++ b/Examples/ExampleCPlusPlus.s @@ -1,16 +1,19 @@ ; Path: Examples/ExampleCPlusPlus.cxx ; Language: MPCC assembly. (Generated from C++) -; Date: 2024-5-12 +; Date: 2024-5-14 #bits 64 #org 0x1000000 -mov r8, 20
-sub r8, 1
-mov r9, 0
-mov r9, 1
-mov r10, r9
-
-mov rax, r10
-ret
\ No newline at end of file +export .code64 __MPCC_int_main +mov r8, 0 +mov r9, 0 + +mov r10, 1 +mov r10, r8 +mov r11, 0 + +mov r12, 0 +mov rax, 0
+ret |
