Skip to content

Commit

Permalink
This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.
Browse files Browse the repository at this point in the history
git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@9786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information
(no author) committed Jan 1, 2006
1 parent 0190877 commit f86a7fa
Show file tree
Hide file tree
Showing 2 changed files with 75 additions and 0 deletions.
33 changes: 33 additions & 0 deletions ia64.s
@@ -0,0 +1,33 @@
// rb_ia64_flushrs and rb_ia64_bsp is written in IA64 assembly language
// because Intel Compiler for IA64 doesn't support inline assembly.
//
// This file is based on following C program compiled by gcc.
//
// void rb_ia64_flushrs(void) { __builtin_ia64_flushrs(); }
// void *rb_ia64_bsp(void) { return __builtin_ia64_bsp(); }
//
.file "ia64.c"
.text
.align 16
.global rb_ia64_flushrs#
.proc rb_ia64_flushrs#
rb_ia64_flushrs:
.prologue
.body
flushrs
;;
nop.i 0
br.ret.sptk.many b0
.endp rb_ia64_flushrs#
.align 16
.global rb_ia64_bsp#
.proc rb_ia64_bsp#
rb_ia64_bsp:
.prologue
.body
nop.m 0
;;
mov r8 = ar.bsp
br.ret.sptk.many b0
.endp rb_ia64_bsp#
.ident "GCC: (GNU) 3.3.5 (Debian 1:3.3.5-13)"
42 changes: 42 additions & 0 deletions test/ruby/test_dir.rb
@@ -0,0 +1,42 @@
require 'test/unit'

require 'tmpdir'
require 'fileutils'

class TestDir < Test::Unit::TestCase

ROOT = File.join(Dir.tmpdir, "__test_dir__#{$$}")

def setup
Dir.mkdir(ROOT)
for i in ?a..?z
if i % 2 == 0
FileUtils.touch(File.join(ROOT, i.chr))
else
FileUtils.mkdir(File.join(ROOT, i.chr))
end
end
end

def teardown
FileUtils.rm_rf ROOT if File.directory?(ROOT)
end

def test_seek
dir = Dir.open(ROOT)
begin
cache = []
loop do
pos = dir.tell
break unless name = dir.read
cache << [pos, name]
end
for x in cache.sort_by {|x| x[0] % 3 } # shuffle
dir.seek(x[0])
assert_equal(x[1], dir.read)
end
ensure
dir.close
end
end
end

0 comments on commit f86a7fa

Please sign in to comment.