From 6aa5955f791771533d7ff8ac4f7f7d99b6f91641 Mon Sep 17 00:00:00 2001 From: Shagun Agrawal Date: Mon, 16 Dec 2024 22:24:44 +0530 Subject: Add tacky generation for signed, unsigned --- src/cljcc/util.clj | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/cljcc/util.clj') diff --git a/src/cljcc/util.clj b/src/cljcc/util.clj index eb77ad6..c9fc208 100644 --- a/src/cljcc/util.clj +++ b/src/cljcc/util.clj @@ -110,3 +110,19 @@ [v] (and (>= v Integer/MIN_VALUE) (<= v Integer/MAX_VALUE))) + +(defn get-type-size [t] + (condp = t + {:type :int} 5 + {:type :uint} 5 + {:type :long} 10 + {:type :ulong} 10 + (exc/analyzer-error "Invalid type passed to get-type-size." {:type t}))) + +(defn type-signed? [t] + (condp = t + {:type :int} true + {:type :long} true + {:type :uint} false + {:type :ulong} false + (exc/analyzer-error "Invalid type passed to type-signed?." {:type t}))) -- cgit v1.2.3