authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-08-27 00:28:17-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-08-27 00:28:17-04:00
logb59aa7b906c984f182b8abc8fd3e146d956a799d
tree1bf098cca4430b8afda2ab0086b48494ad381636
parent29a418c9d5b3b9c78b707e5b6a119d48ecce9a6a

fixups to linux build


3 files changed, 12 insertions(+), 11 deletions(-)

std/debug.zig+2-1
...@@ -721,7 +721,8 @@ fn getLineNumberInfo(st: &ElfStackTrace, compile_unit: &const CompileUnit, targe...@@ -721,7 +721,8 @@ fn getLineNumberInfo(st: &ElfStackTrace, compile_unit: &const CompileUnit, targe
721 });721 });
722 },722 },
723 else => {723 else => {
724 %return in_stream.seekForward(op_size - 1);724 const fwd_amt = math.cast(isize, op_size - 1) %% return error.InvalidDebugInfo;
725 %return in_stream.seekForward(fwd_amt);
725 },726 },
726 }727 }
727 } else if (opcode >= opcode_base) {728 } else if (opcode >= opcode_base) {
std/io.zig+3-3
...@@ -328,7 +328,7 @@ pub const InStream = struct {...@@ -328,7 +328,7 @@ pub const InStream = struct {
328 return mem.readInt(input_slice, T, is_be);328 return mem.readInt(input_slice, T, is_be);
329 }329 }
330330
331 pub fn seekForward(is: &InStream, amount: usize) -> %void {331 pub fn seekForward(is: &InStream, amount: isize) -> %void {
332 switch (builtin.os) {332 switch (builtin.os) {
333 Os.linux, Os.darwin => {333 Os.linux, Os.darwin => {
334 const result = system.lseek(is.fd, amount, system.SEEK_CUR);334 const result = system.lseek(is.fd, amount, system.SEEK_CUR);
...@@ -351,7 +351,7 @@ pub const InStream = struct {...@@ -351,7 +351,7 @@ pub const InStream = struct {
351 pub fn seekTo(is: &InStream, pos: usize) -> %void {351 pub fn seekTo(is: &InStream, pos: usize) -> %void {
352 switch (builtin.os) {352 switch (builtin.os) {
353 Os.linux, Os.darwin => {353 Os.linux, Os.darwin => {
354 const result = system.lseek(is.fd, pos, system.SEEK_SET);354 const result = system.lseek(is.fd, @bitCast(isize, pos), system.SEEK_SET);
355 const err = system.getErrno(result);355 const err = system.getErrno(result);
356 if (err > 0) {356 if (err > 0) {
357 return switch (err) {357 return switch (err) {
...@@ -390,7 +390,7 @@ pub const InStream = struct {...@@ -390,7 +390,7 @@ pub const InStream = struct {
390 }390 }
391391
392 pub fn getEndPos(is: &InStream) -> %usize {392 pub fn getEndPos(is: &InStream) -> %usize {
393 var stat: system.stat = undefined;393 var stat: system.Stat = undefined;
394 const err = system.getErrno(system.fstat(is.fd, &stat));394 const err = system.getErrno(system.fstat(is.fd, &stat));
395 if (err > 0) {395 if (err > 0) {
396 return switch (err) {396 return switch (err) {
std/os/linux_x86_64.zig+7-7
...@@ -370,14 +370,14 @@ pub const F_GETOWN_EX = 16;...@@ -370,14 +370,14 @@ pub const F_GETOWN_EX = 16;
370370
371pub const F_GETOWNER_UIDS = 17;371pub const F_GETOWNER_UIDS = 17;
372372
373pub inline fn syscall0(number: usize) -> usize {373pub fn syscall0(number: usize) -> usize {
374 asm volatile ("syscall"374 asm volatile ("syscall"
375 : [ret] "={rax}" (-> usize)375 : [ret] "={rax}" (-> usize)
376 : [number] "{rax}" (number)376 : [number] "{rax}" (number)
377 : "rcx", "r11")377 : "rcx", "r11")
378}378}
379379
380pub inline fn syscall1(number: usize, arg1: usize) -> usize {380pub fn syscall1(number: usize, arg1: usize) -> usize {
381 asm volatile ("syscall"381 asm volatile ("syscall"
382 : [ret] "={rax}" (-> usize)382 : [ret] "={rax}" (-> usize)
383 : [number] "{rax}" (number),383 : [number] "{rax}" (number),
...@@ -385,7 +385,7 @@ pub inline fn syscall1(number: usize, arg1: usize) -> usize {...@@ -385,7 +385,7 @@ pub inline fn syscall1(number: usize, arg1: usize) -> usize {
385 : "rcx", "r11")385 : "rcx", "r11")
386}386}
387387
388pub inline fn syscall2(number: usize, arg1: usize, arg2: usize) -> usize {388pub fn syscall2(number: usize, arg1: usize, arg2: usize) -> usize {
389 asm volatile ("syscall"389 asm volatile ("syscall"
390 : [ret] "={rax}" (-> usize)390 : [ret] "={rax}" (-> usize)
391 : [number] "{rax}" (number),391 : [number] "{rax}" (number),
...@@ -394,7 +394,7 @@ pub inline fn syscall2(number: usize, arg1: usize, arg2: usize) -> usize {...@@ -394,7 +394,7 @@ pub inline fn syscall2(number: usize, arg1: usize, arg2: usize) -> usize {
394 : "rcx", "r11")394 : "rcx", "r11")
395}395}
396396
397pub inline fn syscall3(number: usize, arg1: usize, arg2: usize, arg3: usize) -> usize {397pub fn syscall3(number: usize, arg1: usize, arg2: usize, arg3: usize) -> usize {
398 asm volatile ("syscall"398 asm volatile ("syscall"
399 : [ret] "={rax}" (-> usize)399 : [ret] "={rax}" (-> usize)
400 : [number] "{rax}" (number),400 : [number] "{rax}" (number),
...@@ -404,7 +404,7 @@ pub inline fn syscall3(number: usize, arg1: usize, arg2: usize, arg3: usize) ->...@@ -404,7 +404,7 @@ pub inline fn syscall3(number: usize, arg1: usize, arg2: usize, arg3: usize) ->
404 : "rcx", "r11")404 : "rcx", "r11")
405}405}
406406
407pub inline fn syscall4(number: usize, arg1: usize, arg2: usize, arg3: usize, arg4: usize) -> usize {407pub fn syscall4(number: usize, arg1: usize, arg2: usize, arg3: usize, arg4: usize) -> usize {
408 asm volatile ("syscall"408 asm volatile ("syscall"
409 : [ret] "={rax}" (-> usize)409 : [ret] "={rax}" (-> usize)
410 : [number] "{rax}" (number),410 : [number] "{rax}" (number),
...@@ -415,7 +415,7 @@ pub inline fn syscall4(number: usize, arg1: usize, arg2: usize, arg3: usize, arg...@@ -415,7 +415,7 @@ pub inline fn syscall4(number: usize, arg1: usize, arg2: usize, arg3: usize, arg
415 : "rcx", "r11")415 : "rcx", "r11")
416}416}
417417
418pub inline fn syscall5(number: usize, arg1: usize, arg2: usize, arg3: usize, arg4: usize, arg5: usize) -> usize {418pub fn syscall5(number: usize, arg1: usize, arg2: usize, arg3: usize, arg4: usize, arg5: usize) -> usize {
419 asm volatile ("syscall"419 asm volatile ("syscall"
420 : [ret] "={rax}" (-> usize)420 : [ret] "={rax}" (-> usize)
421 : [number] "{rax}" (number),421 : [number] "{rax}" (number),
...@@ -427,7 +427,7 @@ pub inline fn syscall5(number: usize, arg1: usize, arg2: usize, arg3: usize, arg...@@ -427,7 +427,7 @@ pub inline fn syscall5(number: usize, arg1: usize, arg2: usize, arg3: usize, arg
427 : "rcx", "r11")427 : "rcx", "r11")
428}428}
429429
430pub inline fn syscall6(number: usize, arg1: usize, arg2: usize, arg3: usize, arg4: usize,430pub fn syscall6(number: usize, arg1: usize, arg2: usize, arg3: usize, arg4: usize,
431 arg5: usize, arg6: usize) -> usize431 arg5: usize, arg6: usize) -> usize
432{432{
433 asm volatile ("syscall"433 asm volatile ("syscall"