Mercurial > hg > truffle
comparison src/cpu/x86/vm/c1_Runtime1_x86.cpp @ 6453:3bba61323b38
added VMErrorNode intrinsic to support handling fatal errors in snippets
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Thu, 27 Sep 2012 14:23:04 +0200 |
parents | c8759f9f9e3c |
children | 921005bb0b45 |
comparison
equal
deleted
inserted
replaced
6452:a89a18a57617 | 6453:3bba61323b38 |
---|---|
1915 __ leave(); | 1915 __ leave(); |
1916 __ ret(0); | 1916 __ ret(0); |
1917 break; | 1917 break; |
1918 } | 1918 } |
1919 | 1919 |
1920 case graal_vm_error_id: { | |
1921 __ enter(); | |
1922 oop_maps = new OopMapSet(); | |
1923 OopMap* oop_map = save_live_registers(sasm, 0); | |
1924 int call_offset = __ call_RT(noreg, noreg, (address)graal_vm_error, j_rarg0, j_rarg1, j_rarg2); | |
1925 oop_maps->add_gc_map(call_offset, oop_map); | |
1926 restore_live_registers(sasm); | |
1927 __ leave(); | |
1928 __ ret(0); | |
1929 break; | |
1930 } | |
1931 | |
1920 case graal_log_printf_id: { | 1932 case graal_log_printf_id: { |
1921 __ enter(); | 1933 __ enter(); |
1922 oop_maps = new OopMapSet(); | 1934 oop_maps = new OopMapSet(); |
1923 OopMap* oop_map = save_live_registers(sasm, 0); | 1935 OopMap* oop_map = save_live_registers(sasm, 0); |
1924 int call_offset = __ call_RT(noreg, noreg, (address)graal_log_printf, j_rarg0, j_rarg1, j_rarg2); | 1936 int call_offset = __ call_RT(noreg, noreg, (address)graal_log_printf, j_rarg0, j_rarg1, j_rarg2); |