Skip to content
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

arm64: Update Binaries #28

Merged
merged 2 commits into from
Jan 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
28 changes: 25 additions & 3 deletions build.go
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ func (Build) Go() error {
return errs
}

var cppBuildVariants = []Variant{
var cppBuildVariantsCommon = []Variant{
{
name: "basic-cpp",
src: "./src/basic-cpp.cpp",
Expand Down Expand Up @@ -270,7 +270,13 @@ var cppBuildVariants = []Variant{
src: "./src/basic-cpp-multithreaded.cpp",
flags: []string{"-fno-omit-frame-pointer"},
},
}

// TODO(sylfrena): Add Build() for this
var cppBuildVariantsX86 = []Variant{
// -c -g -gz=zlib
// The toy JIT binary is written for x86 and uses assembly, so is architecture specific
// Because this uses assembly, cross compiling will not work here.
{
name: "basic-cpp-jit",
src: "./src/basic-cpp-jit.cpp",
Expand All @@ -283,12 +289,28 @@ var cppBuildVariants = []Variant{
},
}

// TODO(sylfrena): Add Build() for this
var cppBuildVariantsArm64 = []Variant{
// Variants with Pointer Authentication (only available for Arm64)
// This may not work with cross-compilation.
{
name: "basic-cpp-pac-leaf",
src: "./src/basic-cpp.cpp",
flags: []string{"-g", "-fno-PIE", "-no-pie", "-mbranch-protection=pac-ret+leaf"},
},
{
name: "basic-cpp-pac-bti",
src: "./src/basic-cpp.cpp",
flags: []string{"-g", "-fno-PIE", "-no-pie", "-mbranch-protection=pac-ret+bti"},
},
}

// Cpp builds all the C binaries.
func (Build) Cpp() error {
mg.Deps(dirs)

var errs error
for _, vr := range cppBuildVariants {
for _, vr := range cppBuildVariantsCommon {
if err := buildCpp(host, vr.src, vr.name, vr.flags...); err != nil {
errs = errors.Join(errs, err)
}
Expand All @@ -309,7 +331,7 @@ func (Build) Cross() error {
errs = errors.Join(errs, err)
}
}
for _, vr := range cppBuildVariants {
for _, vr := range cppBuildVariantsCommon {
if err := buildCpp(target, vr.src, vr.name, vr.flags...); err != nil {
errs = errors.Join(errs, err)
}
Expand Down
Binary file modified out/arm64/basic-cpp
Binary file not shown.
Binary file removed out/arm64/basic-cpp-jit
Binary file not shown.
Binary file removed out/arm64/basic-cpp-jit-no-fp
Binary file not shown.
Binary file modified out/arm64/basic-cpp-multithreaded-no-fp
Binary file not shown.
Binary file modified out/arm64/basic-cpp-no-fp
Binary file not shown.
Binary file modified out/arm64/basic-cpp-no-fp-with-debuginfo
Binary file not shown.
Binary file modified out/arm64/basic-cpp-no-pie-and-no-fp
Binary file not shown.
Binary file modified out/arm64/basic-cpp-no-pie-and-no-fp-with-compressed-debuginfo
Binary file not shown.
Binary file modified out/arm64/basic-cpp-no-pie-with-compressed-debuginfo
Binary file not shown.
Binary file added out/arm64/basic-cpp-pac-bti
Binary file not shown.
Binary file added out/arm64/basic-cpp-pac-leaf
Binary file not shown.
Binary file modified out/arm64/basic-cpp-plt
Binary file not shown.
Binary file modified out/arm64/basic-cpp-plt-hardened
Binary file not shown.
Binary file modified out/arm64/basic-cpp-plt-no-pie
Binary file not shown.
Binary file modified out/arm64/basic-cpp-plt-pie
Binary file not shown.
Binary file modified out/arm64/basic-cpp-plt-with-debuginfo
Binary file not shown.
Binary file modified out/arm64/basic-cpp-with-debuginfo
Binary file not shown.
Binary file modified out/arm64/basic-go
Binary file not shown.
57 changes: 57 additions & 0 deletions tables/arm64/compact/ours_basic-cpp-pac-bti.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
=> Function start: 400500, Function end: 40053c
pc: 400500 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400504 cfa_type: 2 rbp_type: 4 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400540, Function end: 400544
pc: 400540 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400560, Function end: 400590
pc: 400560 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400590, Function end: 4005cc
pc: 400590 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4005d0, Function end: 400600
pc: 4005d0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4005d4 cfa_type: 2 rbp_type: 1 cfa_offset: 32 rbp_offset: -32 lr_offset: -24
pc: 4005dc cfa_type: 2 rbp_type: 1 cfa_offset: 32 rbp_offset: -32 lr_offset: -24
pc: 4005fc cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400600, Function end: 400604
pc: 400600 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400604, Function end: 400638
pc: 400604 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40060c cfa_type: 2 rbp_type: 0 cfa_offset: 16 rbp_offset: 0 lr_offset: 0
pc: 400634 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400638, Function end: 40066c
pc: 400638 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400640 cfa_type: 2 rbp_type: 0 cfa_offset: 16 rbp_offset: 0 lr_offset: 0
pc: 400668 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 40066c, Function end: 400688
pc: 40066c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400670 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 40067c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400680 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400688, Function end: 4006a4
pc: 400688 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40068c cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400698 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40069c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006a4, Function end: 4006c0
pc: 4006a4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006a8 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006b4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006b8 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006c0, Function end: 4006dc
pc: 4006c0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006c4 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006d0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006d4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006dc, Function end: 4006f8
pc: 4006dc cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006e0 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006ec cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006f0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006f8, Function end: 400714
pc: 4006f8 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006fc cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400708 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40070c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400714, Function end: 400730
pc: 400714 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400718 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
59 changes: 59 additions & 0 deletions tables/arm64/compact/ours_basic-cpp-pac-leaf.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
=> Function start: 400500, Function end: 40053c
pc: 400500 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400504 cfa_type: 2 rbp_type: 4 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400540, Function end: 400544
pc: 400540 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400560, Function end: 400590
pc: 400560 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400590, Function end: 4005cc
pc: 400590 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4005d0, Function end: 400600
pc: 4005d0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4005d4 cfa_type: 2 rbp_type: 1 cfa_offset: 32 rbp_offset: -32 lr_offset: -24
pc: 4005dc cfa_type: 2 rbp_type: 1 cfa_offset: 32 rbp_offset: -32 lr_offset: -24
pc: 4005fc cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400600, Function end: 400604
pc: 400600 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400604, Function end: 40063c
pc: 400604 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400608 cfa_type: 2 rbp_type: 0 cfa_offset: 16 rbp_offset: 0 lr_offset: 0
pc: 400630 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400634 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 40063c, Function end: 400674
pc: 40063c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400640 cfa_type: 2 rbp_type: 0 cfa_offset: 16 rbp_offset: 0 lr_offset: 0
pc: 400668 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40066c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400674, Function end: 400690
pc: 400674 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400678 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400684 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400688 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400690, Function end: 4006ac
pc: 400690 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400694 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006a0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006a4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006ac, Function end: 4006c8
pc: 4006ac cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006b0 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006bc cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006c0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006c8, Function end: 4006e4
pc: 4006c8 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006cc cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006d8 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006dc cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 4006e4, Function end: 400700
pc: 4006e4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006e8 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006f4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006f8 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 400700, Function end: 40071c
pc: 400700 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400704 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400710 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400714 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
=> Function start: 40071c, Function end: 400738
pc: 40071c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400720 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
57 changes: 57 additions & 0 deletions tables/arm64/default/ours_basic-cpp-pac-bti.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
=> Function start: 400500, Function end: 40053c
Loc: 400500 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400504 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400540, Function end: 400544
Loc: 400540 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400560, Function end: 400590
Loc: 400560 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400590, Function end: 4005cc
Loc: 400590 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 4005d0, Function end: 400600
Loc: 4005d0 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4005d4 CFA: $x30=32 RBP: c-32 RA: c-24
Loc: 4005dc CFA: $x30=32 RBP: c-32 RA: c-24
Loc: 4005fc CFA: $x30=0 RBP: u RA: c0
=> Function start: 400600, Function end: 400604
Loc: 400600 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400604, Function end: 400638
Loc: 400604 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 40060c CFA: $x30=16 RBP: u RA($EM_AARCH64): u
Loc: 400634 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400638, Function end: 40066c
Loc: 400638 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400640 CFA: $x30=16 RBP: u RA($EM_AARCH64): u
Loc: 400668 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 40066c, Function end: 400688
Loc: 40066c CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400670 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 40067c CFA: $x30=0 RBP: u RA: c0
Loc: 400680 CFA: $x30=0 RBP: u RA: c0
=> Function start: 400688, Function end: 4006a4
Loc: 400688 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 40068c CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 400698 CFA: $x30=0 RBP: u RA: c0
Loc: 40069c CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006a4, Function end: 4006c0
Loc: 4006a4 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006a8 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006b4 CFA: $x30=0 RBP: u RA: c0
Loc: 4006b8 CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006c0, Function end: 4006dc
Loc: 4006c0 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006c4 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006d0 CFA: $x30=0 RBP: u RA: c0
Loc: 4006d4 CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006dc, Function end: 4006f8
Loc: 4006dc CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006e0 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006ec CFA: $x30=0 RBP: u RA: c0
Loc: 4006f0 CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006f8, Function end: 400714
Loc: 4006f8 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006fc CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 400708 CFA: $x30=0 RBP: u RA: c0
Loc: 40070c CFA: $x30=0 RBP: u RA: c0
=> Function start: 400714, Function end: 400730
Loc: 400714 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400718 CFA: $x30=16 RBP: c-16 RA: c-8
59 changes: 59 additions & 0 deletions tables/arm64/default/ours_basic-cpp-pac-leaf.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
=> Function start: 400500, Function end: 40053c
Loc: 400500 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400504 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400540, Function end: 400544
Loc: 400540 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400560, Function end: 400590
Loc: 400560 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400590, Function end: 4005cc
Loc: 400590 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 4005d0, Function end: 400600
Loc: 4005d0 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4005d4 CFA: $x30=32 RBP: c-32 RA: c-24
Loc: 4005dc CFA: $x30=32 RBP: c-32 RA: c-24
Loc: 4005fc CFA: $x30=0 RBP: u RA: c0
=> Function start: 400600, Function end: 400604
Loc: 400600 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400604, Function end: 40063c
Loc: 400604 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400608 CFA: $x30=16 RBP: u RA($EM_AARCH64): u
Loc: 400630 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400634 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 40063c, Function end: 400674
Loc: 40063c CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400640 CFA: $x30=16 RBP: u RA($EM_AARCH64): u
Loc: 400668 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 40066c CFA: $x30=0 RBP: u RA($EM_AARCH64): u
=> Function start: 400674, Function end: 400690
Loc: 400674 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400678 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 400684 CFA: $x30=0 RBP: u RA: c0
Loc: 400688 CFA: $x30=0 RBP: u RA: c0
=> Function start: 400690, Function end: 4006ac
Loc: 400690 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400694 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006a0 CFA: $x30=0 RBP: u RA: c0
Loc: 4006a4 CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006ac, Function end: 4006c8
Loc: 4006ac CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006b0 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006bc CFA: $x30=0 RBP: u RA: c0
Loc: 4006c0 CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006c8, Function end: 4006e4
Loc: 4006c8 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006cc CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006d8 CFA: $x30=0 RBP: u RA: c0
Loc: 4006dc CFA: $x30=0 RBP: u RA: c0
=> Function start: 4006e4, Function end: 400700
Loc: 4006e4 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 4006e8 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 4006f4 CFA: $x30=0 RBP: u RA: c0
Loc: 4006f8 CFA: $x30=0 RBP: u RA: c0
=> Function start: 400700, Function end: 40071c
Loc: 400700 CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400704 CFA: $x30=16 RBP: c-16 RA: c-8
Loc: 400710 CFA: $x30=0 RBP: u RA: c0
Loc: 400714 CFA: $x30=0 RBP: u RA: c0
=> Function start: 40071c, Function end: 400738
Loc: 40071c CFA: $x30=0 RBP: u RA($EM_AARCH64): u
Loc: 400720 CFA: $x30=16 RBP: c-16 RA: c-8
28 changes: 28 additions & 0 deletions tables/arm64/final/ours_basic-cpp-pac-bti.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
pc: 400500 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400504 cfa_type: 2 rbp_type: 4 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40053c cfa_type: 4 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400540 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400544 cfa_type: 4 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400560 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4005cc cfa_type: 4 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4005d0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4005d4 cfa_type: 2 rbp_type: 1 cfa_offset: 32 rbp_offset: -32 lr_offset: -24
pc: 4005fc cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40060c cfa_type: 2 rbp_type: 0 cfa_offset: 16 rbp_offset: 0 lr_offset: 0
pc: 400634 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400640 cfa_type: 2 rbp_type: 0 cfa_offset: 16 rbp_offset: 0 lr_offset: 0
pc: 400668 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400670 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 40067c cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 40068c cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400698 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006a8 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006b4 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006c4 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006d0 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006e0 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 4006ec cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 4006fc cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400708 cfa_type: 2 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
pc: 400718 cfa_type: 2 rbp_type: 1 cfa_offset: 16 rbp_offset: -16 lr_offset: -8
pc: 400730 cfa_type: 4 rbp_type: 0 cfa_offset: 0 rbp_offset: 0 lr_offset: 0
Loading