Project: Re-optimization using JITLink
Organization: LLVM compiler infrastructure
Contributor: Sunho Kim
A = rand(9); | |
x = rand(9,1); | |
disp("My implementation:"); | |
disp(mul_vec_by_mat(A,x)); | |
disp("Matlab implementation:"); | |
disp(A*x); | |
function Ax = mul_vec_by_mat(A, x) | |
[m, n] = size(A); |
This report summarizes
diff --git a/llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h b/llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h | |
index 994ce783b058..391b9f198fe7 100644 | |
--- a/llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h | |
+++ b/llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h | |
@@ -25,6 +25,13 @@ enum EdgeKind_aarch64 : Edge::Kind { | |
/// Set a CALL immediate field to bits [27:2] of X = Target - Fixup + Addend | |
R_AARCH64_CALL26 = Edge::FirstRelocation, | |
+ /// Set an ADRP immediate value to bits [32:12] of the X | |
+ R_AARCH64_ADR_PREL_PG_HI21, |
#include <bits/stdc++.h> | |
using namespace std; | |
struct DSU { | |
vector<int> e; | |
int SCC; | |
DSU(int n) : e(n, -1), SCC(n) {} | |
bool sameSet(int a, int b) { return find(a) == find(b); } | |
int size(int x) { return -e[find(x)]; } | |
int find(int x) { return e[x] < 0 ? x : e[x] = find(e[x]); } |
#include <bits/stdc++.h> | |
using namespace std; | |
vector<bool> vis; | |
vector<vector<int>> g; | |
void dfs(int u) { | |
if (vis[u]) return; | |
vis[u] = true; | |
for(int v : g[u]) { |
import sys | |
sys.setrecursionlimit(100000) | |
n,m = input().split() | |
n = int(n) | |
m = int(m) | |
g = [[] for _ in range(n)] | |
for _ in range(m): |
#include <bits/stdc++.h> | |
using namespace std; | |
void solve() { | |
int N,X; | |
cin >> N >> X; | |
vector<int> A(N), B(N); | |
for(int i=0;i<N;i++) cin >> A[i], cin >> B[i]; | |
vector<bool> prev(X+1); |
# receive input | |
N, X = input().split() | |
N = int(N) | |
X = int(X) | |
A = [] | |
B = [] | |
for i in range(N): | |
a, b = input().split() | |
A.append(int(a)) | |
B.append(int(b)) |
#include <iostream> | |
#define ISSUE | |
int main(){ | |
#ifdef ISSUE | |
std::ios_base::sync_with_stdio(true); | |
#else | |
std::ios_base::sync_with_stdio(false); | |
#endif |