26 lines
957 B
OCaml
26 lines
957 B
OCaml
open Util.Assert
|
|
open X86
|
|
open Ll
|
|
module Backend = Llbackend.Backend
|
|
module Driver = Llbackend.Driver
|
|
open Llbackend.Backend
|
|
open Gradedtests
|
|
|
|
(* These tests are provided by you -- they will be graded manually *)
|
|
|
|
(* You should also add additional test cases here to help you *)
|
|
(* debug your program. *)
|
|
|
|
let arg_loc_tests =
|
|
[ "arg_loc_0", assert_eqf (fun () -> arg_loc 0) (Reg Rdi)
|
|
; "arg_loc_1", assert_eqf (fun () -> arg_loc 1) (Reg Rsi)
|
|
; "arg_loc_2", assert_eqf (fun () -> arg_loc 2) (Reg Rdx)
|
|
; "arg_loc_3", assert_eqf (fun () -> arg_loc 3) (Reg Rcx)
|
|
; "arg_loc_4", assert_eqf (fun () -> arg_loc 4) (Reg R08)
|
|
; "arg_loc_5", assert_eqf (fun () -> arg_loc 5) (Reg R09)
|
|
; "arg_loc_6", assert_eqf (fun () -> arg_loc 6) (Ind3 (Lit 16L, Rbp))
|
|
; "arg_loc_100", assert_eqf (fun () -> arg_loc 100) (Ind3 (Lit 768L, Rbp))
|
|
]
|
|
;;
|
|
|
|
let provided_tests : suite = [ Test ("arg_loc_tests", arg_loc_tests) ]
|